結果

問題 No.1665 quotient replace
ユーザー bluemeganebluemegane
提出日時 2021-09-10 09:53:39
言語 C#(csc)
(csc 3.9.0)
結果
AC  
実行時間 456 ms / 3,000 ms
コード長 1,586 bytes
コンパイル時間 2,135 ms
コンパイル使用メモリ 110,140 KB
実行使用メモリ 93,456 KB
最終ジャッジ日時 2024-06-10 19:49:56
合計ジャッジ時間 12,115 ms
ジャッジサーバーID
(参考情報)
judge2 / judge5
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 32 ms
22,016 KB
testcase_01 AC 34 ms
22,144 KB
testcase_02 AC 20 ms
18,048 KB
testcase_03 AC 35 ms
22,656 KB
testcase_04 AC 38 ms
22,528 KB
testcase_05 AC 37 ms
22,272 KB
testcase_06 AC 39 ms
23,168 KB
testcase_07 AC 36 ms
22,272 KB
testcase_08 AC 36 ms
23,040 KB
testcase_09 AC 45 ms
25,216 KB
testcase_10 AC 171 ms
49,536 KB
testcase_11 AC 347 ms
78,868 KB
testcase_12 AC 70 ms
29,952 KB
testcase_13 AC 456 ms
93,188 KB
testcase_14 AC 437 ms
93,456 KB
testcase_15 AC 436 ms
93,448 KB
testcase_16 AC 442 ms
93,200 KB
testcase_17 AC 451 ms
93,324 KB
testcase_18 AC 21 ms
17,792 KB
testcase_19 AC 20 ms
17,920 KB
testcase_20 AC 20 ms
18,176 KB
testcase_21 AC 21 ms
18,048 KB
testcase_22 AC 26 ms
17,920 KB
testcase_23 AC 20 ms
18,048 KB
testcase_24 AC 20 ms
17,920 KB
testcase_25 AC 20 ms
17,792 KB
testcase_26 AC 43 ms
22,528 KB
testcase_27 AC 37 ms
23,168 KB
testcase_28 AC 45 ms
25,600 KB
testcase_29 AC 56 ms
28,928 KB
testcase_30 AC 212 ms
61,580 KB
testcase_31 AC 298 ms
79,580 KB
testcase_32 AC 330 ms
72,120 KB
testcase_33 AC 144 ms
45,616 KB
testcase_34 AC 264 ms
64,544 KB
testcase_35 AC 244 ms
59,160 KB
testcase_36 AC 261 ms
64,000 KB
testcase_37 AC 244 ms
61,740 KB
testcase_38 AC 287 ms
65,320 KB
testcase_39 AC 220 ms
59,748 KB
testcase_40 AC 208 ms
59,752 KB
testcase_41 AC 211 ms
59,748 KB
testcase_42 AC 22 ms
18,048 KB
testcase_43 AC 35 ms
21,888 KB
権限があれば一括ダウンロードができます
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc)
Copyright (C) Microsoft Corporation. All rights reserved.

ソースコード

diff #

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

class Eratosthenes
{
    public int[] Table;
    public Eratosthenes(int max)
    {
        CreateTable(max);
    }
    private void CreateTable(int n)
    {
        Table = Enumerable.Range(0, n + 1).ToArray();
        if (n <= 3) return;
        for (int i = 2; i <= n; i += 2) Table[i] = 2;
        for (int p = 3; p * p <= n; p += 2)
        {
            if (Table[p] < p) continue;
            for (int x = p; x <= n; x += p) Table[x] = p;
        }
    }
    public bool IsPrime(int n) => Table[n] == n;
    public int CountPrimes(int n)
    {
        var count = 0;
        while (Table[n] != 1)
        {
            n /= Table[n];
            count++;
        }
        return count;
    }
    public List<int> PrimeFactors(int n)
    {
        var res = new List<int>();
        while (Table[n] != 1)
        {
            res.Add(Table[n]);
            n /= Table[n];
        }
        return res;
    }
}

public class Hello
{
    static void Main()
    {
        var n = int.Parse(Console.ReadLine().Trim());
        string[] line = Console.ReadLine().Trim().Split(' ');
        var a = Array.ConvertAll(line, int.Parse);
        getAns(n, a);
    }
    static void getAns(int n, int[] a)
    {
        if (n == 1) { Console.WriteLine(a[0] == 1 ? "black" : "white"); return; }
        var e = new Eratosthenes(1000000);
        var x = e.CountPrimes(a[0]) ^ e.CountPrimes(a[1]);
        for (int i = 2; i < n; i++) x ^= e.CountPrimes(a[i]);
        Console.WriteLine(x == 0 ? "black" : "white");
    }
}
0