254292026-02-20 02:29:19999Járdakövezés háromféle elemmelcpp17Elfogadva 30/306ms4160 KiB
// Source: https://usaco.guide/general/io

#include <bits/stdc++.h>
using namespace std;
#define int long long

signed main() {
    int n;cin>>n;
    vector<array<int,5>> dp(n+5);
    //0: sima veg, 1: felso kitur, nem 1x1, 2 also kitur, nem 1x1, 3 felso 1x1, 4 also 1x1
    dp[0][0]=1;
    dp[0][3]=1;
    dp[0][4]=1;
    dp[1][0]=2;
    dp[1][1]=2;
    dp[1][2]=2;
    dp[1][3]=2;
    dp[1][4]=2;
    for(int i = 2;i<=n;i++){
        dp[i][0]=dp[i-1][0]+dp[i-2][0]+dp[i-2][1]+dp[i-2][2]+dp[i-2][3]+dp[i-2][4]+dp[i-1][1]+dp[i-1][2]+dp[i-1][3];
        dp[i][1]=dp[i-1][0]+dp[i-1][2]+dp[i-1][4];
        dp[i][2]=dp[i-1][0]+dp[i-1][1]+dp[i-1][3];
        dp[i][3]=dp[i][0];
        dp[i][4]=dp[i][0];
        dp[i][0]%=2023;
        dp[i][1]%=2023;
        dp[i][2]%=2023;
        dp[i][3]%=2023;
        dp[i][4]%=2023;
    }cout<<dp[n][0];
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base30/30
1Elfogadva0/01ms316 KiB
2Elfogadva0/01ms316 KiB
3Elfogadva2/21ms316 KiB
4Elfogadva2/21ms316 KiB
5Elfogadva2/21ms316 KiB
6Elfogadva2/21ms316 KiB
7Elfogadva2/21ms316 KiB
8Elfogadva2/21ms400 KiB
9Elfogadva2/22ms1332 KiB
10Elfogadva2/22ms1672 KiB
11Elfogadva2/24ms2872 KiB
12Elfogadva3/34ms3424 KiB
13Elfogadva3/31ms644 KiB
14Elfogadva3/31ms820 KiB
15Elfogadva3/36ms4160 KiB