답안 #836409

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
836409 2023-08-24T10:56:47 Z oscar1f Roller Coaster Railroad (IOI16_railroad) C++17
34 / 100
61 ms 8760 KB
#include<bits/stdc++.h>
#include "railroad.h"

using namespace std;
using ll=long long;

const ll MAX_TRANSFO=16,INFINI=(ll)1000*1000*1000*1000*1000*1000;
ll nbTransfo;
ll memo[(1<<MAX_TRANSFO)][MAX_TRANSFO];
ll seuil[MAX_TRANSFO],valNouv[MAX_TRANSFO];

ll dyna(ll etat,ll dernPris) {
    if (etat==(1<<nbTransfo)-1) {
        return 0;
    }
    if (memo[etat][dernPris]!=INFINI) {
        return memo[etat][dernPris];
    }
    ll anci;
    if (etat==0) {
        anci=0;
    }
    else {
        anci=valNouv[dernPris];
    }
    //cout<<etat<<" "<<dernPris<<" "<<anci<<endl;
    for (ll i=0;i<nbTransfo;i++) {
        if ((etat>>i)%2==0) {
            memo[etat][dernPris]=min(memo[etat][dernPris],dyna(etat+(1<<i),i)+max(anci-seuil[i],(ll)0));
        }
    }
    return memo[etat][dernPris];
}

ll plan_roller_coaster(vector<int> s,vector<int> t) {
    nbTransfo=s.size();
    for (ll i=0;i<nbTransfo;i++) {
        seuil[i]=s[i];
        valNouv[i]=t[i];
    }
    for (int i=0;i<(1<<nbTransfo);i++) {
        for (int j=0;j<nbTransfo;j++) {
            memo[i][j]=INFINI;
        }
    }
    return dyna(0,0);
}
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB n = 2
2 Correct 0 ms 212 KB n = 2
3 Correct 0 ms 212 KB n = 2
4 Correct 0 ms 212 KB n = 2
5 Correct 0 ms 212 KB n = 2
6 Correct 1 ms 212 KB n = 2
7 Correct 1 ms 212 KB n = 3
8 Correct 1 ms 212 KB n = 3
9 Correct 1 ms 212 KB n = 3
10 Correct 0 ms 340 KB n = 8
11 Correct 0 ms 340 KB n = 8
12 Correct 1 ms 340 KB n = 8
13 Correct 0 ms 340 KB n = 8
14 Correct 0 ms 340 KB n = 8
15 Correct 1 ms 340 KB n = 8
16 Correct 1 ms 340 KB n = 8
17 Correct 1 ms 340 KB n = 8
18 Correct 1 ms 340 KB n = 8
19 Correct 1 ms 212 KB n = 3
20 Correct 0 ms 212 KB n = 7
21 Correct 0 ms 340 KB n = 8
22 Correct 1 ms 340 KB n = 8
23 Correct 1 ms 340 KB n = 8
24 Correct 1 ms 340 KB n = 8
25 Correct 1 ms 340 KB n = 8
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB n = 2
2 Correct 0 ms 212 KB n = 2
3 Correct 0 ms 212 KB n = 2
4 Correct 0 ms 212 KB n = 2
5 Correct 0 ms 212 KB n = 2
6 Correct 1 ms 212 KB n = 2
7 Correct 1 ms 212 KB n = 3
8 Correct 1 ms 212 KB n = 3
9 Correct 1 ms 212 KB n = 3
10 Correct 0 ms 340 KB n = 8
11 Correct 0 ms 340 KB n = 8
12 Correct 1 ms 340 KB n = 8
13 Correct 0 ms 340 KB n = 8
14 Correct 0 ms 340 KB n = 8
15 Correct 1 ms 340 KB n = 8
16 Correct 1 ms 340 KB n = 8
17 Correct 1 ms 340 KB n = 8
18 Correct 1 ms 340 KB n = 8
19 Correct 1 ms 212 KB n = 3
20 Correct 0 ms 212 KB n = 7
21 Correct 0 ms 340 KB n = 8
22 Correct 1 ms 340 KB n = 8
23 Correct 1 ms 340 KB n = 8
24 Correct 1 ms 340 KB n = 8
25 Correct 1 ms 340 KB n = 8
26 Correct 1 ms 340 KB n = 8
27 Correct 1 ms 340 KB n = 8
28 Correct 0 ms 340 KB n = 8
29 Correct 47 ms 8404 KB n = 16
30 Correct 61 ms 8488 KB n = 16
31 Correct 48 ms 8404 KB n = 16
32 Correct 46 ms 8492 KB n = 16
33 Correct 48 ms 8488 KB n = 16
34 Correct 56 ms 8484 KB n = 16
35 Correct 48 ms 8488 KB n = 16
36 Correct 21 ms 4388 KB n = 15
37 Correct 1 ms 340 KB n = 8
38 Correct 50 ms 8404 KB n = 16
39 Correct 49 ms 8404 KB n = 16
40 Correct 1 ms 340 KB n = 9
41 Correct 49 ms 8488 KB n = 16
42 Correct 48 ms 8404 KB n = 16
43 Correct 48 ms 8488 KB n = 16
44 Correct 1 ms 340 KB n = 9
45 Correct 21 ms 4560 KB n = 15
46 Correct 46 ms 8404 KB n = 16
47 Correct 57 ms 8532 KB n = 16
48 Correct 46 ms 8404 KB n = 16
# 결과 실행 시간 메모리 Grader output
1 Incorrect 33 ms 8760 KB answer is not correct: 1 instead of 0
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 1 ms 212 KB n = 2
2 Correct 0 ms 212 KB n = 2
3 Correct 0 ms 212 KB n = 2
4 Correct 0 ms 212 KB n = 2
5 Correct 0 ms 212 KB n = 2
6 Correct 1 ms 212 KB n = 2
7 Correct 1 ms 212 KB n = 3
8 Correct 1 ms 212 KB n = 3
9 Correct 1 ms 212 KB n = 3
10 Correct 0 ms 340 KB n = 8
11 Correct 0 ms 340 KB n = 8
12 Correct 1 ms 340 KB n = 8
13 Correct 0 ms 340 KB n = 8
14 Correct 0 ms 340 KB n = 8
15 Correct 1 ms 340 KB n = 8
16 Correct 1 ms 340 KB n = 8
17 Correct 1 ms 340 KB n = 8
18 Correct 1 ms 340 KB n = 8
19 Correct 1 ms 212 KB n = 3
20 Correct 0 ms 212 KB n = 7
21 Correct 0 ms 340 KB n = 8
22 Correct 1 ms 340 KB n = 8
23 Correct 1 ms 340 KB n = 8
24 Correct 1 ms 340 KB n = 8
25 Correct 1 ms 340 KB n = 8
26 Correct 1 ms 340 KB n = 8
27 Correct 1 ms 340 KB n = 8
28 Correct 0 ms 340 KB n = 8
29 Correct 47 ms 8404 KB n = 16
30 Correct 61 ms 8488 KB n = 16
31 Correct 48 ms 8404 KB n = 16
32 Correct 46 ms 8492 KB n = 16
33 Correct 48 ms 8488 KB n = 16
34 Correct 56 ms 8484 KB n = 16
35 Correct 48 ms 8488 KB n = 16
36 Correct 21 ms 4388 KB n = 15
37 Correct 1 ms 340 KB n = 8
38 Correct 50 ms 8404 KB n = 16
39 Correct 49 ms 8404 KB n = 16
40 Correct 1 ms 340 KB n = 9
41 Correct 49 ms 8488 KB n = 16
42 Correct 48 ms 8404 KB n = 16
43 Correct 48 ms 8488 KB n = 16
44 Correct 1 ms 340 KB n = 9
45 Correct 21 ms 4560 KB n = 15
46 Correct 46 ms 8404 KB n = 16
47 Correct 57 ms 8532 KB n = 16
48 Correct 46 ms 8404 KB n = 16
49 Incorrect 33 ms 8760 KB answer is not correct: 1 instead of 0
50 Halted 0 ms 0 KB -