# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
857496 | 2023-10-06T09:57:46 Z | sunwukong123 | Rail (IOI14_rail) | C++14 | 45 ms | 776 KB |
#include "rail.h" #include <bits/stdc++.h> using namespace std; void debug_out() {cerr<<endl;} template <typename Head, typename... Tail> void debug_out(Head _H, Tail... _T) {cerr<<" "<<to_string(_H);debug_out(_T...);} #define debug(...) cerr<<"["<<#__VA_ARGS__<<"]:",debug_out(__VA_ARGS__) const int MAXN = 5005; const int inf=1000000500ll; const int MOD = (int)1e9 + 7; mt19937 rng(chrono::steady_clock::now().time_since_epoch().count()); typedef pair<int,int> pi; vector<pi> vec; int D[MAXN]; void findLocation(int n, int first, int loc[], int stype[]) { for(int i=1;i<n;i++){ D[i]=getDistance(0,i); vec.push_back({D[i],i}); } sort(vec.begin(),vec.end()); int L=-1,R=-1; R=vec[0].second; loc[vec[0].second]=vec[0].first; stype[0]=1; stype[vec[0].second]=2; for(int i=1;i<(int)vec.size();i++){ int d1=getDistance(vec[i].second, vec[0].second); int d2=inf; //if(L!=-1)d2=getDistance(vec[i].second, L); if(vec[i].first < d1){ stype[vec[i].second]=2; R=vec[i].second; loc[vec[i].second]=vec[i].first; } else{ if(d1<d2){ stype[vec[i].second]=1; loc[vec[i].second]=loc[vec[0].second]-d1; if(loc[vec[i].second]<0)L=vec[i].second; } else{ stype[vec[i].second]=2; loc[vec[i].second]=loc[L]+d2; } } } for(int i=0;i<n;i++){ loc[i]+=first; } /* for(int i=0;i<n;i++){ cout<<stype[i]<<" "; } cout<<"\n"; for(int i=0;i<n;i++){ cout<<loc[i]<<" "; }*/ }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 344 KB | Output is correct |
2 | Correct | 0 ms | 776 KB | Output is correct |
3 | Correct | 1 ms | 348 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 1 ms | 348 KB | Output is correct |
7 | Correct | 0 ms | 348 KB | Output is correct |
8 | Correct | 0 ms | 348 KB | Output is correct |
9 | Correct | 0 ms | 344 KB | Output is correct |
10 | Correct | 0 ms | 344 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 348 KB | Output is correct |
2 | Correct | 0 ms | 348 KB | Output is correct |
3 | Correct | 0 ms | 528 KB | Output is correct |
4 | Correct | 0 ms | 348 KB | Output is correct |
5 | Correct | 0 ms | 348 KB | Output is correct |
6 | Correct | 0 ms | 348 KB | Output is correct |
7 | Correct | 0 ms | 348 KB | Output is correct |
8 | Correct | 0 ms | 348 KB | Output is correct |
9 | Correct | 1 ms | 348 KB | Output is correct |
10 | Correct | 0 ms | 348 KB | Output is correct |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 44 ms | 604 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Incorrect | 45 ms | 656 KB | Output isn't correct |
2 | Halted | 0 ms | 0 KB | - |