9485 2024. 02. 22 11:15:23 AGergo Szigetek (35 pont) cpp17 Időlimit túllépés 9/35 300ms 8040 KiB
#include <bits/stdc++.h>

using namespace std;

int n;
vector<int> price;
vector<int> lowestPrice; // lowest price to get to any island

void bejar(int s,int cost)
{
    if(s == n-1)
    {
        if(lowestPrice[s+1] > cost+ price[s+1])
        {
            lowestPrice[s+1] = cost+ price[s+1];
            bejar(s+1,lowestPrice[s+1]);
        }
    }
    else if(s != n)
    {
        if(lowestPrice[s+1] > cost+ price[s+1])
        {
            lowestPrice[s+1] = cost+ price[s+1];
            bejar(s+1,lowestPrice[s+1]);
        }
        if(lowestPrice[s+2] > cost+ price[s+2])
        {
            lowestPrice[s+2] = cost+ price[s+2];
            bejar(s+2,lowestPrice[s+2]);
        }
    }

}
int main()
{
    cin.tie(0);ios::sync_with_stdio(0);
    cin >> n;
    price.resize(n+1);
    lowestPrice.resize(n+1,INT_MAX);

    for(int i = 0; i < n; i++)
    {
        cin >> price[i+1];
    }

    bejar(1,price[1]);
    cout << lowestPrice[n];
}
Részfeladat Összpont Teszt Verdikt Idő Memória
base 9/35
1 Elfogadva 0/0 3ms 1888 KiB
2 Időlimit túllépés 0/0 300ms 6844 KiB
3 Elfogadva 1/1 3ms 2352 KiB
4 Elfogadva 1/1 3ms 2376 KiB
5 Elfogadva 1/1 3ms 2608 KiB
6 Elfogadva 1/1 3ms 2820 KiB
7 Elfogadva 1/1 3ms 2868 KiB
8 Elfogadva 2/2 8ms 2920 KiB
9 Elfogadva 2/2 186ms 3112 KiB
10 Időlimit túllépés 0/2 250ms 3140 KiB
11 Időlimit túllépés 0/2 256ms 3192 KiB
12 Időlimit túllépés 0/2 300ms 2320 KiB
13 Időlimit túllépés 0/2 256ms 2576 KiB
14 Időlimit túllépés 0/2 264ms 3260 KiB
15 Időlimit túllépés 0/2 252ms 4044 KiB
16 Időlimit túllépés 0/2 268ms 4952 KiB
17 Időlimit túllépés 0/2 261ms 6160 KiB
18 Időlimit túllépés 0/2 252ms 6640 KiB
19 Időlimit túllépés 0/2 268ms 7072 KiB
20 Időlimit túllépés 0/2 264ms 7188 KiB
21 Időlimit túllépés 0/2 264ms 7956 KiB
22 Időlimit túllépés 0/2 261ms 8040 KiB