1702 2022. 12. 01 16:14:35 kovacs.peter.18f Járda-L (40) cpp11 Accepted 40/40 3ms 3676 KiB
#include <iostream>
#include <vector>

using namespace std;

int main() {
    cin.sync_with_stdio(false);
    cin.tie(nullptr);

    int N;
    cin >> N;
    if (N < 2) {
        cout << "1\n";
        return 0;
    }
    vector<long long> halfS(N + 1), fullS(N + 1);
    fullS[0] = fullS[1] = 1;
    fullS[2] = halfS[2] = 2;
    for (int i = 3; i <= N; i++) {
        halfS[i] = halfS[i - 1] + fullS[i - 2] * 2;
        fullS[i] = fullS[i - 1] + fullS[i - 2] + halfS[i - 1];
    }
    cout << fullS[N] << '\n';
}
Subtask Sum Test Verdict Time Memory
base 40/40
1 Accepted 0/0 3ms 1700 KiB
2 Accepted 0/0 2ms 1864 KiB
3 Accepted 2/2 2ms 2068 KiB
4 Accepted 2/2 2ms 2272 KiB
5 Accepted 2/2 2ms 2472 KiB
6 Accepted 2/2 2ms 2712 KiB
7 Accepted 2/2 2ms 2752 KiB
8 Accepted 3/3 2ms 2756 KiB
9 Accepted 3/3 2ms 2760 KiB
10 Accepted 3/3 2ms 2992 KiB
11 Accepted 3/3 2ms 2956 KiB
12 Accepted 3/3 2ms 3204 KiB
13 Accepted 3/3 2ms 3316 KiB
14 Accepted 3/3 2ms 3368 KiB
15 Accepted 3/3 2ms 3468 KiB
16 Accepted 3/3 2ms 3596 KiB
17 Accepted 3/3 2ms 3676 KiB