| # | 제출 시각 | 아이디 | 문제 | 언어 | 결과 | 실행 시간 | 메모리 |
|---|---|---|---|---|---|---|---|
| 1305311 | thelegendary08 | Roller Coaster Railroad (IOI16_railroad) | C++17 | 42 ms | 9032 KiB |
#include "railroad.h"
#include<bits/stdc++.h>
#define int long long
#define vi vector<int>
#define pb push_back
#define eb emplace_back
#define f0r(i,n) for(int i = 0; i < n; i++)
#define FOR(i,k,n) for(int i = k; i < n; i++)
#define vvi vector<vi>
#define pii pair<int,int>
#define vpii vector<pii>
#define dout(x); cout<<x<<' '<<#x<<endl;
#define dout2(x,y); cout<<x<<' '<<#x<<' '<<y<<' '<<#y<<endl;
#define vout(v); for(auto u : v)cout<<u<<' '; cout<<endl;
using namespace std;
long long plan_roller_coaster(std::vector<signed> s, std::vector<signed> t) {
int n = s.size(); vpii w(n); f0r(i,n)w[i].first=s[i],w[i].second=t[i]; vvi dp(n, vi((1LL << n), 4e18)); f0r(i,n)dp[i][(1LL << i)]=0;
FOR(i,1,(1LL << n)){
if(__builtin_popcount(i)==1)continue;
f0r(j,n)if((1LL<<j)&i){
f0r(k,n)if((1<<k)&i){
dp[j][i] = min(dp[j][i], dp[k][i - (1<<j)] + max(0LL, w[k].second - w[j].first));
}
}
}
int ans = 4e18; f0r(i,n){
ans = min(ans, dp[i][(1<<n)-1]);
}
return ans;
}
컴파일 시 표준 에러 (stderr) 메시지
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
| # | Verdict | Execution time | Memory | Grader output |
|---|---|---|---|---|
| Fetching results... | ||||
