Submission #1337315


Source Code Expand

using System;
using System.Linq;
using System.Collections.Generic;

public class Program
{
    public static void Main()
    {
        var nlt = Console.ReadLine().Split()
            .Select(x => long.Parse(x))
            .ToArray();
        var n = (int)nlt[0];
        var l = nlt[1];
        var t = nlt[2];
        var antsQuery =
            from i in Enumerable.Range(0, n)
            let ant = Console.ReadLine().Split()
                .Select(x => long.Parse(x))
                .ToArray()
            select new { pos = ant[0], dir = (int)ant[1] };
        var ants = antsQuery.ToArray();

        var xs = ants.Select(x => x.pos).ToArray();
        var ws = ants.Select(x => x.dir).ToArray();
        var sign = ws.Select(w => w * 2 - 3).ToArray();

        var dl = l * 2;
        var last = t * 2 % dl;
        var lastHalf = last / l * l;
        var lastWalk = last - lastHalf;
        var swapping = Enumerable.Range(0, n)
            .Skip(1)
            .Where(i => ws[i] != ws[0])
            .Count(i => PositiveMod((xs[0] * 2 - lastHalf - xs[i] * 2) * sign[0], dl) <= lastWalk * 2);

        last /= 2;
        var offset = n - swapping * sign[0];
        var finalPosition = new long[n];
        for (int i = 0; i < n; ++i)
        {
            var k = (i + offset) % n;
            finalPosition[k] = PositiveMod(xs[i] - last * sign[i], l);
        }
        Console.WriteLine(string.Join("\n", finalPosition));
    }

    static long PositiveMod(long n, long mod)
        => n >= 0 ? n % mod : (n + mod) % mod;
}

Submission Info

Submission Time
Task C - Ants on a Circle
User nitumeta339
Language C# (Mono 4.6.2.0)
Score 0
Code Size 1590 Byte
Status WA
Exec Time 206 ms
Memory 35504 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 32 ms 9556 KB
sample_02.txt AC 32 ms 9556 KB
subtask_1_01.txt WA 153 ms 28484 KB
subtask_1_02.txt WA 116 ms 24520 KB
subtask_1_03.txt WA 200 ms 35504 KB
subtask_1_04.txt WA 206 ms 35504 KB
subtask_1_05.txt WA 61 ms 21724 KB
subtask_1_06.txt WA 71 ms 19288 KB
subtask_1_07.txt WA 187 ms 31668 KB
subtask_1_08.txt WA 187 ms 31924 KB
subtask_1_09.txt WA 132 ms 29508 KB
subtask_1_10.txt WA 122 ms 26440 KB
subtask_1_11.txt AC 56 ms 17756 KB
subtask_1_12.txt AC 179 ms 32692 KB
subtask_1_13.txt WA 147 ms 25152 KB
subtask_1_14.txt WA 142 ms 30532 KB
subtask_1_15.txt AC 33 ms 13652 KB
subtask_1_16.txt AC 33 ms 13652 KB