結果

問題 No.769 UNOシミュレータ
ユーザー yomo3yomo3
提出日時 2020-02-18 15:03:38
言語 Python3
(3.12.2 + numpy 1.26.4 + scipy 1.12.0)
結果
AC  
実行時間 804 ms / 2,000 ms
コード長 663 bytes
コンパイル時間 186 ms
コンパイル使用メモリ 12,672 KB
実行使用メモリ 11,648 KB
最終ジャッジ日時 2024-05-02 00:44:35
合計ジャッジ時間 7,192 ms
ジャッジサーバーID
(参考情報)
judge5 / judge1
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 27 ms
10,624 KB
testcase_01 AC 26 ms
10,624 KB
testcase_02 AC 25 ms
10,624 KB
testcase_03 AC 25 ms
10,496 KB
testcase_04 AC 27 ms
10,752 KB
testcase_05 AC 28 ms
10,624 KB
testcase_06 AC 27 ms
10,752 KB
testcase_07 AC 29 ms
10,624 KB
testcase_08 AC 28 ms
10,624 KB
testcase_09 AC 51 ms
10,752 KB
testcase_10 AC 51 ms
10,752 KB
testcase_11 AC 51 ms
10,624 KB
testcase_12 AC 280 ms
10,752 KB
testcase_13 AC 290 ms
10,880 KB
testcase_14 AC 278 ms
10,880 KB
testcase_15 AC 534 ms
11,008 KB
testcase_16 AC 547 ms
11,008 KB
testcase_17 AC 544 ms
11,008 KB
testcase_18 AC 804 ms
11,648 KB
testcase_19 AC 777 ms
11,648 KB
testcase_20 AC 803 ms
11,392 KB
testcase_21 AC 790 ms
11,520 KB
testcase_22 AC 25 ms
10,624 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

N, M = map(int, input().split())

put = [0] * N
descend = False
id = 0
d2 = 0
d4 = 0
for i in range(M):
    L = input()
    if d2 > 0 and L != 'drawtwo':
        put[id] -= d2 * 2
        d2 = 0
        id = (id + (-1)**descend) % N
    elif d4 > 0 and L != 'drawfour':
        put[id] -= d4 * 4
        d4 = 0
        id = (id + (-1)**descend) % N

    put[id] += 1
    step = 1

    if L == 'drawtwo':
        d2 += 1
    elif L == 'drawfour':
        d4 += 1
    elif L == 'skip':
        step=2
    elif L == 'reverse':
        descend = not descend
    
    if i == M-1:
        print(id + 1, put[id])
        break

    id = (id + step * (-1)**descend) % N
0