結果
| 問題 |
No.769 UNOシミュレータ
|
| コンテスト | |
| ユーザー |
vis103
|
| 提出日時 | 2018-12-18 19:20:28 |
| 言語 | C#(csc) (csc 3.9.0) |
| 結果 |
WA
|
| 実行時間 | - |
| コード長 | 3,221 bytes |
| コンパイル時間 | 1,002 ms |
| コンパイル使用メモリ | 112,924 KB |
| 実行使用メモリ | 31,332 KB |
| 最終ジャッジ日時 | 2024-11-22 08:49:14 |
| 合計ジャッジ時間 | 3,171 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;
}
else if(0 < DrawFour)
{
Count[Next] += DrawFour * 4;
Next += Reverse;
}
DrawTwo = 0;
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;
}
else if (0 < DrawFour)
{
Count[Next] += DrawFour * 4;
Next += Reverse;
}
DrawTwo = 0;
DrawFour = 0;
Next += N;
Next %= N;
Count[Next]++;
Next += Reverse * 2;
}
else if(s == "reverse")
{
if (0 < DrawTwo)
{
Count[Next] += DrawTwo * 2;
Next += Reverse;
}
else if (0 < DrawFour)
{
Count[Next] += DrawFour * 4;
Next += Reverse;
}
DrawTwo = 0;
DrawFour = 0;
Next += N;
Next %= N;
Count[Next]++;
Reverse *= -1;
Next += Reverse;
}
Next += N;
Next %= N;
}
Console.WriteLine((winner + 1).ToString() + " " + Count[winner].ToString());
}
}
vis103