234902026-01-23 19:12:55matemakaiJárda-L (40)cpp17Elfogadva 40/401ms388 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].full * 2; 
		}
	}

	cout << dp[n].full << endl;
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base40/40
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms380 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva3/31ms316 KiB
9Elfogadva3/31ms316 KiB
10Elfogadva3/31ms316 KiB
11Elfogadva3/31ms332 KiB
12Elfogadva3/31ms388 KiB
13Elfogadva3/31ms316 KiB
14Elfogadva3/31ms316 KiB
15Elfogadva3/31ms316 KiB
16Elfogadva3/31ms316 KiB
17Elfogadva3/31ms316 KiB