290372026-06-03 20:38:19algoproDombokcpp17Futási hiba 75/100781ms524288 KiB
// UUID: e3522013-2c7c-405b-beeb-ae4366a1b82f
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

int main() {

    ios_base::sync_with_stdio(false);
    cin.tie(0);
    
    // dp[i][j][epult (0/1)] = első i domb közül j db-ra építek, ha az utolsóra nincs/van ház
	// dp[i][j][0] = min{dp[i-1][j][1], dp[i-2][j][1], ...} - ha nem lehet vmi, INF
    // dp[i][j][1] = dp[i-1][j-1]

    int n; cin >> n;
    vector<int> a(n+1, 0);
    for (int i = 1; i <= n; i++) cin >> a[i];

    vector<vector<vector<int>>> dp(n+1, vector<vector<int>>((n+1) / 2 + 1, vector<int>(2, 1e9)));
    dp[0][0][0] = dp[1][0][0] = dp[1][1][1] = 0;
    
    for (int i = 2; i <= n; i++) {
        dp[i][0][0] = 0;
        for (int j = 1; j <= (n+1) / 2; j++) {
            int both = max(0, a[i-1] - min(a[i-2], a[i]) + 1);
            // dp[i][j][0]
            dp[i][j][0] = min(dp[i-1][j][0], dp[i-1][j][1] + max(0, a[i] - a[i-1] + 1));
            // dp[i][j][1] - előtte nem áll ház, itt áll
            dp[i][j][1] = min(dp[i-2][j-1][0] + max(0, a[i-1] - a[i] + 1), dp[i-2][j-1][1] + both);
        }
    }

    for (int i = 1; i <= (n+1) / 2; i++) {
        cout << min(dp[n][i][0], dp[n][i][1]) << " ";
    }

    return 0;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
00/0
1Elfogadva1ms500 KiB
2Elfogadva1ms316 KiB
3Elfogadva1ms316 KiB
17/7
4Elfogadva1ms316 KiB
5Elfogadva1ms316 KiB
6Elfogadva1ms316 KiB
7Elfogadva1ms316 KiB
8Elfogadva1ms316 KiB
9Elfogadva1ms316 KiB
10Elfogadva1ms316 KiB
11Elfogadva1ms316 KiB
12Elfogadva2ms316 KiB
13Elfogadva2ms316 KiB
215/15
14Elfogadva1ms316 KiB
15Elfogadva1ms316 KiB
16Elfogadva1ms316 KiB
17Elfogadva1ms316 KiB
18Elfogadva1ms316 KiB
19Elfogadva1ms316 KiB
20Elfogadva1ms316 KiB
21Elfogadva1ms316 KiB
22Elfogadva1ms508 KiB
23Elfogadva1ms316 KiB
24Elfogadva1ms316 KiB
25Elfogadva1ms316 KiB
26Elfogadva1ms316 KiB
27Elfogadva1ms316 KiB
28Elfogadva1ms316 KiB
313/13
29Elfogadva1ms316 KiB
30Elfogadva1ms564 KiB
31Elfogadva1ms564 KiB
32Elfogadva1ms564 KiB
33Elfogadva2ms568 KiB
34Elfogadva1ms564 KiB
35Elfogadva2ms848 KiB
36Elfogadva1ms564 KiB
37Elfogadva1ms564 KiB
38Elfogadva1ms564 KiB
39Elfogadva2ms564 KiB
40Elfogadva2ms564 KiB
418/18
41Elfogadva1ms748 KiB
42Elfogadva1ms564 KiB
43Elfogadva2ms756 KiB
44Elfogadva2ms748 KiB
45Elfogadva1ms500 KiB
46Elfogadva1ms316 KiB
47Elfogadva1ms564 KiB
48Elfogadva1ms564 KiB
49Elfogadva1ms564 KiB
522/22
50Elfogadva2ms564 KiB
51Elfogadva1ms564 KiB
52Elfogadva14ms7340 KiB
53Elfogadva14ms7224 KiB
54Elfogadva13ms7132 KiB
55Elfogadva13ms7220 KiB
56Elfogadva14ms7308 KiB
57Elfogadva13ms7104 KiB
58Elfogadva14ms7172 KiB
59Elfogadva13ms7220 KiB
60Elfogadva13ms7220 KiB
61Elfogadva13ms7188 KiB
62Elfogadva14ms7288 KiB
63Elfogadva13ms7228 KiB
60/25
64Elfogadva50ms27960 KiB
65Elfogadva57ms27828 KiB
66Futási hiba777ms524288 KiB
67Futási hiba695ms524288 KiB
68Futási hiba686ms524288 KiB
69Futási hiba781ms524288 KiB
70Kihagyva0s0 KiB
71Kihagyva0s0 KiB
72Kihagyva0s0 KiB
73Kihagyva0s0 KiB
74Kihagyva0s0 KiB
75Kihagyva0s0 KiB
76Kihagyva0s0 KiB