# | Submission time | Handle | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
28112 | 2017-07-15T10:56:40 Z | aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa(#1199, suhgyuho_william) | The Ant and The Bitcoin (FXCUP2_ant) | C++14 | 0 ms | 3580 KB |
#include <bits/stdc++.h> #include <unistd.h> #define pii pair<int,int> #define pb push_back #define lld long long using namespace std; int N; lld L,T; struct data{ lld x; int num; }a[100002]; int main(){ scanf("%d %lld %lld",&N,&L,&T); T %= (L*2); for(int i=1; i<=N; i++){ char s[10]; scanf("%lld %s",&a[i].x,s); a[i].num = i; if(s[0] == 'L'){ if(T <= a[i].x) a[i].x -= T; else if(T <= a[i].x+L) a[i].x = T-a[i].x; else a[i].x = a[i].x+L*2-T; }else{ if(T <= L-a[i].x) a[i].x += T; else if(T <= L*2-a[i].x) a[i].x = -a[i].x + L*2 - T; else a[i].x = T-(L*2-a[i].x); } } sort(a+1,a+N+1,[&](data &x,data &y){ return x.x < y.x; }); int where; scanf("%d",&where); for(int i=1; i<=N; i++){ if(a[i].num == where){ printf("%d\n",i); break; } } return 0; }
Compilation message
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
1 | Correct | 0 ms | 3580 KB | Output is correct |
2 | Incorrect | 0 ms | 3580 KB | Output isn't correct |
3 | Halted | 0 ms | 0 KB | - |