4565 2023. 03. 29 21:14:36 Valaki2 Járdakövezés háromféle elemmel cpp14 Elfogadva 30/30 4ms 5936 KiB
#include <bits/stdc++.h>
using namespace std;

#define ll long long
#define pb push_back
#define mp make_pair
#define pii pair<int, int>
#define fi first
#define se second

const int mod = 2023;

void solve() {
    int n;
    cin >> n;
    vector<int> fel(1 + n, 0), egesz(1 + n, 0), reszfel(1 + n, 0);
    egesz[0] = 1;
    fel[1] = 1;
    egesz[1] = 2;
    for(int i = 2; i <= n; i++) {
        reszfel[i] = (fel[i - 1] + egesz[i - 2]) % mod;
        // ez tuti jo
        fel[i] = (egesz[i - 1] + fel[i - 1] + egesz[i - 2]) % mod;
        // ketszer szamoljuk: ha ket kicsi van a legvegen
        egesz[i] = (2 * egesz[i - 1] + egesz[i - 2] + 2 * reszfel[i] + 2 * fel[i - 1]) % mod;
    }
    cout << egesz[n] << "\n";
}

signed main() {
    ios_base::sync_with_stdio(false);
    cin.tie(nullptr);
    solve();
    return 0;
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 30/30
1 Elfogadva 0/0 3ms 1976 KiB
2 Elfogadva 0/0 2ms 2204 KiB
3 Elfogadva 2/2 2ms 2420 KiB
4 Elfogadva 2/2 3ms 2520 KiB
5 Elfogadva 2/2 3ms 2656 KiB
6 Elfogadva 2/2 3ms 2848 KiB
7 Elfogadva 2/2 2ms 2980 KiB
8 Elfogadva 2/2 2ms 3192 KiB
9 Elfogadva 2/2 3ms 3856 KiB
10 Elfogadva 2/2 3ms 4036 KiB
11 Elfogadva 2/2 4ms 4888 KiB
12 Elfogadva 3/3 4ms 5464 KiB
13 Elfogadva 3/3 3ms 3788 KiB
14 Elfogadva 3/3 3ms 3940 KiB
15 Elfogadva 3/3 4ms 5936 KiB