結果
問題 | No.769 UNOシミュレータ |
ユーザー | keymoon |
提出日時 | 2019-04-19 13:53:03 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
AC
|
実行時間 | 118 ms / 2,000 ms |
コード長 | 1,924 bytes |
コンパイル時間 | 2,501 ms |
コンパイル使用メモリ | 111,796 KB |
実行使用メモリ | 31,404 KB |
最終ジャッジ日時 | 2024-05-02 00:33:56 |
合計ジャッジ時間 | 3,364 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 32 ms
27,208 KB |
testcase_01 | AC | 31 ms
23,092 KB |
testcase_02 | AC | 32 ms
24,836 KB |
testcase_03 | AC | 32 ms
27,080 KB |
testcase_04 | AC | 32 ms
25,004 KB |
testcase_05 | AC | 32 ms
23,100 KB |
testcase_06 | AC | 31 ms
22,964 KB |
testcase_07 | AC | 32 ms
25,168 KB |
testcase_08 | AC | 32 ms
25,092 KB |
testcase_09 | AC | 35 ms
27,096 KB |
testcase_10 | AC | 34 ms
25,008 KB |
testcase_11 | AC | 35 ms
25,100 KB |
testcase_12 | AC | 62 ms
29,048 KB |
testcase_13 | AC | 62 ms
27,132 KB |
testcase_14 | AC | 60 ms
29,168 KB |
testcase_15 | AC | 89 ms
31,224 KB |
testcase_16 | AC | 90 ms
28,912 KB |
testcase_17 | AC | 89 ms
30,960 KB |
testcase_18 | AC | 118 ms
31,404 KB |
testcase_19 | AC | 117 ms
29,096 KB |
testcase_20 | AC | 117 ms
29,228 KB |
testcase_21 | AC | 117 ms
29,096 KB |
testcase_22 | AC | 31 ms
24,968 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.IO; using System.Linq; using System.Collections; using System.Collections.Generic; using System.Text; using System.Numerics; using System.Threading.Tasks; using System.Text.RegularExpressions; using static System.Math; using Debug = System.Diagnostics.Debug; using MethodImplOptions = System.Runtime.CompilerServices.MethodImplOptions; using MethodImplAttribute = System.Runtime.CompilerServices.MethodImplAttribute; static class P { static void Main() { var nm = Console.ReadLine().Split().Select(int.Parse).ToArray(); int n = nm[0]; int m = nm[1]; int[] cardCount = new int[n]; int turn = 0; int turnOrder = 1; int last = 0; int streak = 0; int streakedNum = 0; foreach (var item in Enumerable.Repeat(0, m).Select(_ => Console.ReadLine())) { if (streakedNum != 0) { if ((streakedNum == 2 && item != "drawtwo") || (streakedNum == 4 && item != "drawfour")) { cardCount[turn] -= streakedNum * streak; streak = 0; streakedNum = 0; turn = (turn + turnOrder + n) % n; } } last = turn; cardCount[turn]++; if (item == "skip") { turn = (turn + turnOrder + n) % n; } if (item == "reverse") { turnOrder *= -1; } if (item == "drawtwo") { streak++; streakedNum = 2; } if (item == "drawfour") { streak++; streakedNum = 4; } //ターン変更 turn = (turn + turnOrder + n) % n; } Console.WriteLine($"{last + 1} {cardCount[last]}"); } }