結果
問題 |
No.769 UNOシミュレータ
|
ユーザー |
![]() |
提出日時 | 2018-12-18 18:56:44 |
言語 | C#(csc) (csc 3.9.0) |
結果 |
WA
|
実行時間 | - |
コード長 | 3,253 bytes |
コンパイル時間 | 867 ms |
コンパイル使用メモリ | 113,016 KB |
実行使用メモリ | 31,420 KB |
最終ジャッジ日時 | 2024-11-22 08:49:17 |
合計ジャッジ時間 | 3,101 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 2 WA * 21 |
コンパイルメッセージ
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.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; class Program { static void Main(string[] args) { string[] a = Console.ReadLine().Split(' '); int N = int.Parse(a[0]); int M = int.Parse(a[1]); int[] Count = Enumerable.Repeat(0, N).ToArray(); int DrawTwo = 0; int DrawFour = 0; int Reverse = 1; int Next = 0; int winner = 0; for(int i = 0;i < M; i++) { winner = Next; string s = Console.ReadLine(); if(s == "number") { if(0 < DrawTwo) { Count[Next] -= DrawTwo * 2; Next += Reverse; DrawTwo = 0; } else if(0 < DrawFour) { Count[Next] -= DrawFour * 4; Next += Reverse; DrawFour = 0; } Next += N; Next %= N; Count[Next]++; Next += Reverse; } else if(s == "drawtwo") { if (0 < DrawTwo) { Count[Next] -= DrawFour * 4; Next += Reverse; DrawFour = 0; } Next += N; Next %= N; DrawTwo++; Count[Next]++; Next += Reverse; } else if(s == "drawfour") { if (0 < DrawTwo) { Count[Next] -= DrawTwo * 2; Next += Reverse; DrawTwo = 0; } Next += N; Next %= N; DrawFour++; Count[Next]++; Next += Reverse; } else if(s == "skip") { if (0 < DrawTwo) { Count[Next] -= DrawTwo * 2; Next += Reverse; DrawTwo = 0; } else if (0 < DrawFour) { Count[Next] -= DrawFour * 4; Next += Reverse; DrawFour = 0; } Next += N; Next %= N; Count[Next]++; Next += Reverse * 2; } else if(s == "reverse") { if (0 < DrawTwo) { Count[Next] -= DrawTwo * 2; Next += Reverse; DrawTwo = 0; } else if (0 < DrawFour) { Count[Next] -= DrawFour * 4; Next += Reverse; DrawFour = 0; } Next += N; Next %= N; Count[Next]++; Reverse *= -1; Next += Reverse; } Next += N; Next %= N; } Console.WriteLine((winner + 1).ToString() + " " + Count[winner].ToString()); } }