AtCoderのABC    次のABCの問題へ    前のABCの問題へ

ABC244-C Yamanote Line Game


問題へのリンク


C#のソース

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

class Program
{
    static void Main()
    {
        int N = int.Parse(Console.ReadLine());

        var NumList = new List<int>();
        for (int I = 1; I <= 2 * N + 1; I++) {
            NumList.Add(I);
        }

        while (true) {
            int UB = NumList.Count - 1;
            Console.WriteLine(NumList[UB]);
            NumList.RemoveAt(UB);

            int NewNum = int.Parse(Console.ReadLine());
            if (NewNum == 0) break;
            NumList.Remove(NewNum);
        }
    }
}


解説

1000の2乗 = 1000万なので
平衡二分探索木ではなく、Listで登場した数値を管理してます。