73532024-01-08 10:12:59CWMJárdakövezés háromféle elemmelcpp17Hibás válasz 0/304ms6416 KiB
#include <iostream>
#include <vector>
#include <set>
#include <queue>

using namespace std;

int main()
{
    int n;
    cin >> n;
    vector<int> DPa = vector<int>(n+1);
    vector<int> DPb = vector<int>(n+1);
    vector<int> DPc = vector<int>(n + 1);
    DPa[0] = 1;
    DPa[1] = 2;
    DPb[0] = 0;
    DPb[1] = 2;
    DPc[0] = 1;
    DPc[1] = 2;
    for (size_t i = 1; i < n; i++)
    {
        //DPa cases
        DPa[i + 1] += DPc[i];
        DPa[i + 1] += 2 * DPb[i];
        DPa[i + 1] += 2 * DPb[i - 1];
        DPa[i + 1] += 2 * DPc[i - 1];
        DPa[i + 1] += DPa[i];
        DPa[i + 1] += DPa[i - 1];
        //DPb cases
        DPb[i + 1] += DPb[i];
        DPb[i + 1] += DPc[i];
        //DPc cases
        DPc[i + 1] += DPa[i];
        DPc[i + 1] += DPc[i];
    }
    cout << DPa[n];
}
RészfeladatÖsszpontTesztVerdiktIdőMemória
base0/30
1Elfogadva0/03ms1812 KiB
2Hibás válasz0/03ms1940 KiB
3Hibás válasz0/23ms2156 KiB
4Hibás válasz0/23ms2400 KiB
5Hibás válasz0/23ms2616 KiB
6Hibás válasz0/23ms2828 KiB
7Hibás válasz0/23ms3056 KiB
8Hibás válasz0/23ms3148 KiB
9Hibás válasz0/23ms4072 KiB
10Hibás válasz0/23ms4212 KiB
11Hibás válasz0/24ms4952 KiB
12Hibás válasz0/34ms5544 KiB
13Hibás válasz0/33ms3992 KiB
14Hibás válasz0/33ms4140 KiB
15Hibás válasz0/34ms6416 KiB