234892026-01-23 19:10:12matemakaiJárda-L (40)cpp17Hibás válasz 6/401ms508 KiB
#include <bits/stdc++.h>
using namespace std;

struct State {
	long long split = 0, full = 0;
};

int main() {
	int n;
	cin >> n;
	vector<State> dp(n + 1);

	dp[0].full = 1;

	for (int i = 1; i < n + 1; ++i) {
		dp[i].full += dp[i - 1].full;
		dp[i].split += dp[i - 1].split;
		dp[i].full += dp[i - 1].split;
		if (i >= 2) {
			dp[i].full += dp[i - 2].full;
			dp[i].split += dp[i - 2].split;
			dp[i].split += dp[i - 2].full * 2; 
		}
	}

	cout << dp[n].full << endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base6/40
1Elfogadva0/01ms508 KiB
2Hibás válasz0/01ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms500 KiB
5Elfogadva2/21ms316 KiB
6Hibás válasz0/21ms316 KiB
7Hibás válasz0/21ms332 KiB
8Hibás válasz0/31ms316 KiB
9Hibás válasz0/31ms316 KiB
10Hibás válasz0/31ms316 KiB
11Hibás válasz0/31ms316 KiB
12Hibás válasz0/31ms316 KiB
13Hibás válasz0/31ms316 KiB
14Hibás válasz0/31ms316 KiB
15Hibás válasz0/31ms316 KiB
16Hibás válasz0/31ms316 KiB
17Hibás válasz0/31ms316 KiB