73932024-01-08 13:32:15EsVagyJárdakövezés háromféle elemmelcpp17Accepted 30/3020ms4492 KiB
#include <iostream>
#include <vector>
#include <string>
#include <algorithm>
#include <set>
#include <map>
#include <climits>
#include <queue>
#include <fstream>
#include <sstream>
#include <math.h>
#include <list>

using namespace std;

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

    int size;
    cin >> size;

    vector<int> noStep(size + 1, 0);
    vector<int> step(size + 1, 0);
    noStep[0] = 1;
    noStep[1] = 2;
    step[1] = 2;

    for (int i = 2; i <= size; i++)
    {
        int stepNext = 2 * noStep[i - 2] + 2 * noStep[i - 1] + step[i - 1];
        int noStepNext = noStep[i - 1] + noStep[i - 2] + step[i - 1] + stepNext - noStep[i - 1];
        clog << noStepNext << " " << stepNext << "\n";
        noStep[i] = noStepNext % 2023;
        step[i] = stepNext % 2023;
    }

    cout << noStep[noStep.size() - 1] << "\n";
}
SubtaskSumTestVerdictTimeMemory
base30/30
1Accepted0/03ms1828 KiB
2Accepted0/03ms2020 KiB
3Accepted2/23ms2232 KiB
4Accepted2/23ms2440 KiB
5Accepted2/23ms2540 KiB
6Accepted2/23ms2524 KiB
7Accepted2/23ms2524 KiB
8Accepted2/23ms2624 KiB
9Accepted2/28ms3116 KiB
10Accepted2/28ms3360 KiB
11Accepted2/214ms3820 KiB
12Accepted3/317ms4172 KiB
13Accepted3/34ms3296 KiB
14Accepted3/34ms3292 KiB
15Accepted3/320ms4492 KiB