답안 #711937

# 제출 시각 아이디 문제 언어 결과 실행 시간 메모리
711937 2023-03-17T17:27:19 Z bin9638 Roller Coaster Railroad (IOI16_railroad) C++17
34 / 100
57 ms 28232 KB
#include <bits/stdc++.h>

#ifndef SKY
#include "railroad.h"
#endif // SKY

using namespace std;

#define ll long long
#define pb push_back
#define N 200010
#define ii pair<ll,int>
#define fs first
#define sc second

int n;
ll dp[(1<<16)+10][17];

void selfmin(ll&u,ll v)
{
    u=min(u,v);
}

ll plan_roller_coaster(vector<int> s, vector<int> t)
{
  //  for(auto u:s)cout<<u<<" ";
    n=s.size();
   // cout<<n<<endl;
    memset(dp,0x3f3f,sizeof(dp));
    for(int i=0;i<n;i++)
        dp[(1<<i)][i]=0;
    for(int mask=1;mask<(1<<n);mask++)
        for(int i=0;i<n;i++)
            if((mask>>i)&1)
            {
              //  cout<<mask<<" "<<i<<" "<<dp[mask][i]<<endl;
               for(int j=0;j<n;j++)
                    if(((mask>>j)&1)==0)
                      selfmin(dp[mask+(1<<j)][j],dp[mask][i]+1ll*max(0,t[i]-s[j]));
            }
    ll res=1e18;
    for(int i=0;i<n;i++)
        selfmin(res,dp[(1<<n)-1][i]);
    return res;
}

#ifdef SKY
int main()
{
    freopen("A.inp","r",stdin);
    freopen("A.out","w",stdout);
    int n;
    cin>>n;
    vector<int>s,t;
    for(int i=0;i<n;i++)
    {
        int A,B;
        cin>>A>>B;
        s.pb(A);
        t.pb(B);
    }
    cout<<plan_roller_coaster(s,t);
}
#endif
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8916 KB n = 2
2 Correct 4 ms 9024 KB n = 2
3 Correct 4 ms 9008 KB n = 2
4 Correct 4 ms 8916 KB n = 2
5 Correct 4 ms 8916 KB n = 2
6 Correct 4 ms 9016 KB n = 2
7 Correct 4 ms 8916 KB n = 3
8 Correct 4 ms 8916 KB n = 3
9 Correct 4 ms 8916 KB n = 3
10 Correct 4 ms 8916 KB n = 8
11 Correct 4 ms 8916 KB n = 8
12 Correct 4 ms 9000 KB n = 8
13 Correct 5 ms 8916 KB n = 8
14 Correct 4 ms 8916 KB n = 8
15 Correct 4 ms 8916 KB n = 8
16 Correct 4 ms 8916 KB n = 8
17 Correct 5 ms 8916 KB n = 8
18 Correct 4 ms 8940 KB n = 8
19 Correct 4 ms 9016 KB n = 3
20 Correct 5 ms 8916 KB n = 7
21 Correct 4 ms 8916 KB n = 8
22 Correct 4 ms 9016 KB n = 8
23 Correct 4 ms 9020 KB n = 8
24 Correct 5 ms 8916 KB n = 8
25 Correct 4 ms 8916 KB n = 8
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8916 KB n = 2
2 Correct 4 ms 9024 KB n = 2
3 Correct 4 ms 9008 KB n = 2
4 Correct 4 ms 8916 KB n = 2
5 Correct 4 ms 8916 KB n = 2
6 Correct 4 ms 9016 KB n = 2
7 Correct 4 ms 8916 KB n = 3
8 Correct 4 ms 8916 KB n = 3
9 Correct 4 ms 8916 KB n = 3
10 Correct 4 ms 8916 KB n = 8
11 Correct 4 ms 8916 KB n = 8
12 Correct 4 ms 9000 KB n = 8
13 Correct 5 ms 8916 KB n = 8
14 Correct 4 ms 8916 KB n = 8
15 Correct 4 ms 8916 KB n = 8
16 Correct 4 ms 8916 KB n = 8
17 Correct 5 ms 8916 KB n = 8
18 Correct 4 ms 8940 KB n = 8
19 Correct 4 ms 9016 KB n = 3
20 Correct 5 ms 8916 KB n = 7
21 Correct 4 ms 8916 KB n = 8
22 Correct 4 ms 9016 KB n = 8
23 Correct 4 ms 9020 KB n = 8
24 Correct 5 ms 8916 KB n = 8
25 Correct 4 ms 8916 KB n = 8
26 Correct 4 ms 9020 KB n = 8
27 Correct 5 ms 9020 KB n = 8
28 Correct 4 ms 8916 KB n = 8
29 Correct 31 ms 9140 KB n = 16
30 Correct 33 ms 8916 KB n = 16
31 Correct 34 ms 9016 KB n = 16
32 Correct 30 ms 9004 KB n = 16
33 Correct 30 ms 8916 KB n = 16
34 Correct 30 ms 8916 KB n = 16
35 Correct 30 ms 8916 KB n = 16
36 Correct 16 ms 9020 KB n = 15
37 Correct 5 ms 9012 KB n = 8
38 Correct 32 ms 8916 KB n = 16
39 Correct 37 ms 8916 KB n = 16
40 Correct 4 ms 8916 KB n = 9
41 Correct 32 ms 9036 KB n = 16
42 Correct 31 ms 8916 KB n = 16
43 Correct 32 ms 9016 KB n = 16
44 Correct 4 ms 8916 KB n = 9
45 Correct 17 ms 8916 KB n = 15
46 Correct 33 ms 8916 KB n = 16
47 Correct 31 ms 8916 KB n = 16
48 Correct 33 ms 9024 KB n = 16
# 결과 실행 시간 메모리 Grader output
1 Runtime error 57 ms 28232 KB Execution killed with signal 11
2 Halted 0 ms 0 KB -
# 결과 실행 시간 메모리 Grader output
1 Correct 4 ms 8916 KB n = 2
2 Correct 4 ms 9024 KB n = 2
3 Correct 4 ms 9008 KB n = 2
4 Correct 4 ms 8916 KB n = 2
5 Correct 4 ms 8916 KB n = 2
6 Correct 4 ms 9016 KB n = 2
7 Correct 4 ms 8916 KB n = 3
8 Correct 4 ms 8916 KB n = 3
9 Correct 4 ms 8916 KB n = 3
10 Correct 4 ms 8916 KB n = 8
11 Correct 4 ms 8916 KB n = 8
12 Correct 4 ms 9000 KB n = 8
13 Correct 5 ms 8916 KB n = 8
14 Correct 4 ms 8916 KB n = 8
15 Correct 4 ms 8916 KB n = 8
16 Correct 4 ms 8916 KB n = 8
17 Correct 5 ms 8916 KB n = 8
18 Correct 4 ms 8940 KB n = 8
19 Correct 4 ms 9016 KB n = 3
20 Correct 5 ms 8916 KB n = 7
21 Correct 4 ms 8916 KB n = 8
22 Correct 4 ms 9016 KB n = 8
23 Correct 4 ms 9020 KB n = 8
24 Correct 5 ms 8916 KB n = 8
25 Correct 4 ms 8916 KB n = 8
26 Correct 4 ms 9020 KB n = 8
27 Correct 5 ms 9020 KB n = 8
28 Correct 4 ms 8916 KB n = 8
29 Correct 31 ms 9140 KB n = 16
30 Correct 33 ms 8916 KB n = 16
31 Correct 34 ms 9016 KB n = 16
32 Correct 30 ms 9004 KB n = 16
33 Correct 30 ms 8916 KB n = 16
34 Correct 30 ms 8916 KB n = 16
35 Correct 30 ms 8916 KB n = 16
36 Correct 16 ms 9020 KB n = 15
37 Correct 5 ms 9012 KB n = 8
38 Correct 32 ms 8916 KB n = 16
39 Correct 37 ms 8916 KB n = 16
40 Correct 4 ms 8916 KB n = 9
41 Correct 32 ms 9036 KB n = 16
42 Correct 31 ms 8916 KB n = 16
43 Correct 32 ms 9016 KB n = 16
44 Correct 4 ms 8916 KB n = 9
45 Correct 17 ms 8916 KB n = 15
46 Correct 33 ms 8916 KB n = 16
47 Correct 31 ms 8916 KB n = 16
48 Correct 33 ms 9024 KB n = 16
49 Runtime error 57 ms 28232 KB Execution killed with signal 11
50 Halted 0 ms 0 KB -