244292026-02-11 14:59:00algoproSzigetek (35 pont)cpp17Elfogadva 35/3525ms1268 KiB
// UUID: 3927f242-544b-4a51-9b2a-d78149f6bed2
#include <bits/stdc++.h>
using namespace std;

/*
6
3 5  9  7  1  6
3 8 12 15 13 19

5 2  6  3  3  1  9  2  2  4  1  1  7  6  5
5 7 11 10 13 11 20 13 15 17 16 17 23 23 28  
Dinamikus Programozás
DP

dp[i]: az i. szigetre eljutás minimális összköltsége
dp[1] = dij[1]
dp[2] = dij[1]+dij[2]
i = 3..n:
dp[i] = min(dp[i-1], dp[i-2]) + dij[i]
*/

int main() {
	int n;
	cin>>n;
	vector<int>v(n);
	vector<int>dp(n);
	for(int i=0;i<n;i++){
		cin>>v[i];
	}
	dp[0]=v[0];
	dp[1]=v[0]+v[1];
	for(int i=2;i<n;i++){
	dp[i]=v[i]+min(dp[i-1],dp[i-2]);
	}
	cout<<dp[n-1];			
}
	  
RészfeladatÖsszpontTesztVerdiktIdőMemória
base35/35
1Elfogadva0/01ms508 KiB
2Elfogadva0/025ms1080 KiB
3Elfogadva1/11ms316 KiB
4Elfogadva1/11ms316 KiB
5Elfogadva1/11ms316 KiB
6Elfogadva1/11ms316 KiB
7Elfogadva1/11ms500 KiB
8Elfogadva2/21ms316 KiB
9Elfogadva2/21ms412 KiB
10Elfogadva2/22ms424 KiB
11Elfogadva2/22ms432 KiB
12Elfogadva2/22ms316 KiB
13Elfogadva2/23ms316 KiB
14Elfogadva2/24ms316 KiB
15Elfogadva2/28ms632 KiB
16Elfogadva2/213ms800 KiB
17Elfogadva2/217ms820 KiB
18Elfogadva2/219ms1044 KiB
19Elfogadva2/221ms1076 KiB
20Elfogadva2/221ms1076 KiB
21Elfogadva2/224ms1076 KiB
22Elfogadva2/224ms1268 KiB