Submission #1303461
Source Code Expand
#include <iostream> #include <vector> #include <algorithm> using namespace std; struct xw { int X; int W; }; xw xw_list[100001]; int main(void) { int N, L, T; cin >> N >> L >> T; int dir[2] = {0}; int first = 0; vector <int> endpos; for (int i= 1; i <= N; i++) { cin >> xw_list[i].X >> xw_list[i].W; if (xw_list[i].W == 1) { dir[0]++; endpos.push_back((xw_list[i].X+T)%L); if (first == 0) first = i; } else { dir[1]++; long long mv = T%L; mv = xw_list[i].X + L - mv; mv = mv % L; endpos.push_back(mv); } } if (first == 0) { for (int i = 0; i < N; i++) { cout << endpos.at(i) << endl; } return 0; } long long crossed = 0; for (int i = 1; i <= N; i++) { if (xw_list[first].W != xw_list[i].W) { int diff = abs(xw_list[first].X-xw_list[i].X); int tim = T; if (tim > 0) { crossed += (2*tim)/L; tim %= L; } crossed %= N; if (diff==0 || tim==0) continue; if (diff+L<=(tim*2)) crossed += 2; else if (diff<=tim*2) crossed += 1; crossed %= N; } } int changed_no; changed_no = crossed + first-1; int val = endpos.at(first-1); sort(endpos.begin(), endpos.end()); int vecpos; for (vecpos = N-1; vecpos >= 0; vecpos--) { if (endpos.at(vecpos) == val) { break; } } for (int i = 0; i < N; i++) { cout << endpos.at((vecpos+i-changed_no+N)%N) << endl; } return 0; }
Submission Info
Submission Time | |
---|---|
Task | C - Ants on a Circle |
User | gmanipulator |
Language | C++14 (GCC 5.4.1) |
Score | 0 |
Code Size | 1464 Byte |
Status | WA |
Exec Time | 224 ms |
Memory | 2552 KB |
Judge Result
Set Name | Sample | All | ||||||
---|---|---|---|---|---|---|---|---|
Score / Max Score | 0 / 0 | 0 / 700 | ||||||
Status |
|
|
Set Name | Test Cases |
---|---|
Sample | sample_01.txt, sample_02.txt |
All | sample_01.txt, sample_02.txt, sample_01.txt, sample_02.txt, subtask_1_01.txt, subtask_1_02.txt, subtask_1_03.txt, subtask_1_04.txt, subtask_1_05.txt, subtask_1_06.txt, subtask_1_07.txt, subtask_1_08.txt, subtask_1_09.txt, subtask_1_10.txt, subtask_1_11.txt, subtask_1_12.txt, subtask_1_13.txt, subtask_1_14.txt, subtask_1_15.txt, subtask_1_16.txt |
Case Name | Status | Exec Time | Memory |
---|---|---|---|
sample_01.txt | AC | 1 ms | 256 KB |
sample_02.txt | AC | 1 ms | 256 KB |
subtask_1_01.txt | WA | 133 ms | 1660 KB |
subtask_1_02.txt | AC | 108 ms | 1276 KB |
subtask_1_03.txt | WA | 220 ms | 2552 KB |
subtask_1_04.txt | WA | 224 ms | 2552 KB |
subtask_1_05.txt | WA | 34 ms | 640 KB |
subtask_1_06.txt | AC | 51 ms | 768 KB |
subtask_1_07.txt | AC | 206 ms | 2168 KB |
subtask_1_08.txt | AC | 211 ms | 2168 KB |
subtask_1_09.txt | WA | 137 ms | 1532 KB |
subtask_1_10.txt | WA | 119 ms | 1404 KB |
subtask_1_11.txt | AC | 31 ms | 640 KB |
subtask_1_12.txt | AC | 190 ms | 2296 KB |
subtask_1_13.txt | AC | 145 ms | 1788 KB |
subtask_1_14.txt | AC | 133 ms | 1660 KB |
subtask_1_15.txt | AC | 1 ms | 256 KB |
subtask_1_16.txt | AC | 1 ms | 256 KB |