#include "rail.h"
#include <bits/stdc++.h>
using namespace std;
const int mxN=5e3;
array<int, 2> a[mxN];
map<int, int> mp;
void findLocation(int n, int f, int *p, int *s) {
p[0]=f;
s[0]=1;
mp[f]=0;
for(int i=1; i<n; ++i)
a[i]={getDistance(0, i), i};
sort(a, a+n);
int l=0, r=a[1][1];
p[r]=f+a[1][0];
s[r]=2;
mp[p[r]]=r;
for(int i=2; i<n; ++i) {
int dl=getDistance(l, a[i][1]), dr=getDistance(r, a[i][1]), m=(p[l]+dl+p[r]-dr)/2, t=mp.find(m)==mp.end()?(m>f?1:2):s[mp[m]];
if(t^2) {
p[a[i][1]]=p[l]+dl;
s[a[i][1]]=2;
if(p[a[i][1]]>p[r])
r=a[i][1];
} else {
p[a[i][1]]=p[r]-dr;
s[a[i][1]]=1;
if(p[a[i][1]]<p[l])
l=a[i][1];
}
mp[p[a[i][1]]]=a[i][1];
}
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
376 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
2 ms |
376 KB |
Output is correct |
6 |
Correct |
2 ms |
376 KB |
Output is correct |
7 |
Correct |
2 ms |
376 KB |
Output is correct |
8 |
Correct |
2 ms |
376 KB |
Output is correct |
9 |
Correct |
2 ms |
376 KB |
Output is correct |
10 |
Correct |
2 ms |
376 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
376 KB |
Output is correct |
2 |
Correct |
2 ms |
376 KB |
Output is correct |
3 |
Correct |
2 ms |
376 KB |
Output is correct |
4 |
Correct |
2 ms |
376 KB |
Output is correct |
5 |
Correct |
2 ms |
376 KB |
Output is correct |
6 |
Correct |
2 ms |
376 KB |
Output is correct |
7 |
Correct |
2 ms |
376 KB |
Output is correct |
8 |
Correct |
2 ms |
376 KB |
Output is correct |
9 |
Correct |
2 ms |
376 KB |
Output is correct |
10 |
Correct |
2 ms |
376 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
85 ms |
768 KB |
Output is correct |
2 |
Correct |
86 ms |
888 KB |
Output is correct |
3 |
Correct |
86 ms |
764 KB |
Output is correct |
4 |
Correct |
85 ms |
804 KB |
Output is correct |
5 |
Correct |
85 ms |
760 KB |
Output is correct |
6 |
Correct |
86 ms |
760 KB |
Output is correct |
7 |
Correct |
87 ms |
760 KB |
Output is correct |
8 |
Correct |
86 ms |
888 KB |
Output is correct |
9 |
Correct |
86 ms |
760 KB |
Output is correct |
10 |
Correct |
86 ms |
760 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
85 ms |
760 KB |
Output is correct |
2 |
Correct |
86 ms |
924 KB |
Output is correct |
3 |
Correct |
86 ms |
760 KB |
Output is correct |
4 |
Correct |
87 ms |
760 KB |
Output is correct |
5 |
Correct |
85 ms |
760 KB |
Output is correct |
6 |
Correct |
86 ms |
760 KB |
Output is correct |
7 |
Correct |
86 ms |
868 KB |
Output is correct |
8 |
Correct |
85 ms |
772 KB |
Output is correct |
9 |
Correct |
85 ms |
764 KB |
Output is correct |
10 |
Correct |
86 ms |
764 KB |
Output is correct |
11 |
Correct |
85 ms |
760 KB |
Output is correct |
12 |
Correct |
85 ms |
760 KB |
Output is correct |
13 |
Correct |
85 ms |
860 KB |
Output is correct |
14 |
Correct |
86 ms |
760 KB |
Output is correct |
15 |
Correct |
86 ms |
760 KB |
Output is correct |
16 |
Correct |
86 ms |
760 KB |
Output is correct |
17 |
Correct |
85 ms |
760 KB |
Output is correct |
18 |
Correct |
85 ms |
760 KB |
Output is correct |
19 |
Correct |
85 ms |
760 KB |
Output is correct |
20 |
Correct |
87 ms |
732 KB |
Output is correct |