#include "railroad.h"
#include<bits/stdc++.h>
#define ll long long
using namespace std;
const ll inf = 1e16;
long long plan_roller_coaster(std::vector<int> s, std::vector<int> t) {
int n = (int) s.size();
if(n <= 16){
vector<vector<ll>> dp(vector<vector<ll>> (1 << n , vector<ll> (n , inf)));
for(int i = 0;i < n; ++ i) dp[0][i] = 0;
for(int i = 1;i < (1 << n); ++ i){
for(int j = 0;j < n; ++ j){
if(i & (1 << j)){
int z = (i - (1 << j));
if(z == 0) dp[i][j] = 0;
for(int p = 0;p < n; ++ p){
dp[i][j] = min(dp[i][j] , dp[z][p] + max(0 , t[p] - s[j]));
}
}
}
}
ll ans = inf;
for(int i = 0;i < n; ++ i) ans = min(ans , dp[(1 << n) - 1][i]);
return ans;
}
multiset<pair<int , int>> st;
for(int i = 0;i < n; ++ i) st.insert({s[i] , t[i]});
int x = st.begin() -> second;
st.erase(st.begin());
for(int i = 1;i < n; ++ i){
auto to = st.lower_bound({x , 0});
//cout << to -> first << ' ' << to -> second << '\n';
if(to == st.end()) return 1;
x = to -> second;
st.erase(to);
}
return 0;
}
컴파일 시 표준 에러 (stderr) 메시지
railroad.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
railroad_c.h:1:9: warning: #pragma once in main file
1 | #pragma once
| ^~~~
# | 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... |