Submission #436056

#TimeUsernameProblemLanguageResultExecution timeMemory
436056cfalasRoller Coaster Railroad (IOI16_railroad)C++14
11 / 100
2076 ms6468 KiB
#include<bits/stdc++.h> using namespace std; #define mp make_pair #define INF 10000000 #define MOD 1000000007 #define MID ((l+r)/2) #define HASHMOD 2305843009213693951 #define ll long long #define ull unsigned long long #define F first #define S second typedef pair<ll, ll> ii; typedef pair<ii, int> iii; typedef vector<int> vi; typedef vector<ii> vii; typedef map<int, int> mii; #define EPS 1e-6 #define FOR(i,n) for(int i=0;i<((int)(n));i++) #define FORi(i,a,b) for(int i=((int)(a));i<((int)(b));i++) #define FOA(v, a) for(auto v : a) #include "railroad.h" long long plan_roller_coaster(std::vector<int> s, std::vector<int> t) { int n = (int) s.size(); vii m(n); //FOR(i,n) cout<<s[i]<<" "; //cout<<endl; //FOR(i,n) cout<<t[i]<<" "; //cout<<endl; FOR(i,n) m[i] = {s[i], t[i]}; //FOR(i,n) cout<<m[i].F<<" "<<m[i].S<<endl; sort(m.begin(), m.end()); ll ans=HASHMOD; do{ int p=1; bool ok = true; ll cans=0; FOA(v,m){ cans+=max(0ll, p-v.F); p = v.S; } //FOA(v,m) cout<<"("<<v.F<<" "<<v.S<<") "; //cout<<cans<<endl; if(ok) ans = min(ans, cans); }while(next_permutation(m.begin(), m.end())); return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...