Submission #3040629


Source Code Expand

#!/usr/bin/env python

from collections import deque
import itertools as it
import sys
import math

sys.setrecursionlimit(10000000)

N, L, T = map(int, raw_input().split())
T %= L

X1 = []
X2 = []
Xs = []
m = {}

for i in range(N):
    X, W = map(int, raw_input().split())
    if W == 1:
        X1.append(X)
    else:
        X2.append(X)
    m[X] = 0
    Xs.append((X, W))
if len(X1) != 0 and len(X2) != 0:
    for loop in range(2):
        pos1 = 0
        pos2 = 0
        bias = 0
        sz = len(X2)
        X2 = [X2[-1] - L] + X2 + [X2[0] + L]
        for x in X1:
            while True:
                if X2[pos1 + 1] + bias - x <= 2 * T:
                    pos1 += 1
                else:
                    break
                if pos1 > sz:
                    bias += L
                    pos1 = 1
            while True:
                if X2[pos2 + 1] < x:
                    pos2 += 1
                else:
                    break
            if loop == 0:
                m[x] = pos1 - pos2 + bias / L * sz
            else:
                m[(L - x) * (x != 0)] = pos1 - pos2 + bias / L * sz
        X2 = X2[1:-1]
        for i in range(len(X1)):
            X1[i] = (L - X1[i]) * (X1[i] != 0)
        for i in range(len(X2)):
            X2[i] = (L - X2[i]) * (X2[i] != 0)
        X1, X2 = X2, X1

ans = [0] * N
for i in range(N):
    X, W = Xs[i]
    if W == 1:
        ans[(i + m[X]) % N] = (X + T) % L
    else:
        ans[(i - m[X]) % N] = (X - T) % L

for i in range(N):
    print ans[i]

Submission Info

Submission Time
Task C - Ants on a Circle
User monolith
Language Python (2.7.6)
Score 0
Code Size 1589 Byte
Status WA
Exec Time 565 ms
Memory 31388 KB

Judge Result

Set Name Sample All
Score / Max Score 0 / 0 0 / 700
Status
AC × 2
AC × 8
WA × 12
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 14 ms 2936 KB
sample_02.txt AC 12 ms 2820 KB
subtask_1_01.txt WA 340 ms 19412 KB
subtask_1_02.txt WA 261 ms 16812 KB
subtask_1_03.txt WA 565 ms 31388 KB
subtask_1_04.txt WA 561 ms 31388 KB
subtask_1_05.txt WA 96 ms 6964 KB
subtask_1_06.txt WA 131 ms 11124 KB
subtask_1_07.txt WA 533 ms 31132 KB
subtask_1_08.txt WA 537 ms 31132 KB
subtask_1_09.txt WA 349 ms 20272 KB
subtask_1_10.txt WA 292 ms 17780 KB
subtask_1_11.txt AC 63 ms 6068 KB
subtask_1_12.txt AC 355 ms 25392 KB
subtask_1_13.txt WA 344 ms 19504 KB
subtask_1_14.txt WA 323 ms 18392 KB
subtask_1_15.txt AC 11 ms 2820 KB
subtask_1_16.txt AC 12 ms 2820 KB