結果
問題 | No.183 たのしい排他的論理和(EASY) |
ユーザー | mban |
提出日時 | 2017-01-12 13:28:02 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 2,331 ms / 5,000 ms |
コード長 | 1,964 bytes |
コンパイル時間 | 3,275 ms |
コンパイル使用メモリ | 107,544 KB |
実行使用メモリ | 44,480 KB |
最終ジャッジ日時 | 2023-09-12 09:46:02 |
合計ジャッジ時間 | 16,977 ms |
ジャッジサーバーID (参考情報) |
judge14 / judge12 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 61 ms
21,504 KB |
testcase_01 | AC | 61 ms
23,464 KB |
testcase_02 | AC | 63 ms
23,520 KB |
testcase_03 | AC | 61 ms
21,348 KB |
testcase_04 | AC | 61 ms
19,492 KB |
testcase_05 | AC | 61 ms
21,600 KB |
testcase_06 | AC | 62 ms
21,560 KB |
testcase_07 | AC | 2,331 ms
44,208 KB |
testcase_08 | AC | 1,430 ms
44,400 KB |
testcase_09 | AC | 1,001 ms
42,396 KB |
testcase_10 | AC | 1,195 ms
40,316 KB |
testcase_11 | AC | 1,548 ms
44,480 KB |
testcase_12 | AC | 64 ms
23,472 KB |
testcase_13 | AC | 61 ms
21,624 KB |
testcase_14 | AC | 380 ms
22,000 KB |
testcase_15 | AC | 1,600 ms
42,484 KB |
testcase_16 | AC | 62 ms
23,576 KB |
testcase_17 | AC | 406 ms
42,188 KB |
testcase_18 | AC | 1,901 ms
44,228 KB |
testcase_19 | AC | 234 ms
41,972 KB |
コンパイルメッセージ
Microsoft (R) Visual C# Compiler version 3.9.0-6.21124.20 (db94f4cc) Copyright (C) Microsoft Corporation. All rights reserved.
ソースコード
using System; using System.Collections; using System.Collections.Generic; using System.Collections.Specialized; using System.Text; using System.Text.RegularExpressions; using System.Linq; using System.IO; class Program { static private Magatro M = new Magatro(); static private void Main(string[]args) { M.Scan(); M.Solve(); } } public class Scanner { private string[] S; private int Index; private char Separator; public Scanner(char separator = ' ') { Index = 0; Separator = separator; } private string[] Line() { return Console.ReadLine().Split(Separator); } public string Next() { string result; if (S == null || Index >= S.Length) { S = Line(); Index = 0; } result = S[Index]; Index++; return result; } public int NextInt() { return int.Parse(Next()); } public double NextDouble() { return double.Parse(Next()); } public long NextLong() { return long.Parse(Next()); } } public class Magatro { private int N; private int[] A; private const int Max = 1<<15; public void Scan() { Scanner sc = new Scanner(); N = sc.NextInt(); A = new int[N]; for(int i = 0; i < N; i++) { A[i] = sc.NextInt(); } } public void Solve() { bool[] dp = new bool[Max + 1]; dp[0] = true; for(int i = 0; i < N; i++) { List<int> next = new List<int>(); for(int j = 0; j <= Max; j++) { if (dp[j]) { next.Add(j ^ A[i]); } } for(int j = 0; j < next.Count; j++) { dp[next[j]] = true; } } Console.WriteLine(dp.Count(ss =>ss)); } }