結果
問題 |
No.1292 パタパタ三角形
|
ユーザー |
![]() |
提出日時 | 2020-11-20 22:03:39 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 422 ms / 2,000 ms |
コード長 | 1,290 bytes |
コンパイル時間 | 120 ms |
コンパイル使用メモリ | 13,056 KB |
実行使用メモリ | 47,148 KB |
最終ジャッジ日時 | 2024-07-23 13:02:06 |
合計ジャッジ時間 | 4,377 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 14 |
ソースコード
A = [ord(a) - 97 for a in input()] N = len(A) x, y = 0, 0 U = [(1, -1), (-1, 1), (-1, -1)] S = set() S.add((0, 0)) for i, a in enumerate(A): x += U[a][0] y += U[a][1] S.add((x, y)) if i % 2 == 0: if U[a] == (1, -1): U[a] = (-1, 1) if U[a-1] == (-1, 1): U[a-1] = (1, 1) U[a-2] = (1, -1) else: U[a-1] = (1, -1) U[a-2] = (1, 1) elif U[a] == (-1, 1): U[a] = (1, -1) if U[a-1] == (1, -1): U[a-1] = (1, 1) U[a-2] = (-1, 1) else: U[a-1] = (-1, 1) U[a-2] = (1, 1) else: U[a] = (1, 1) else: if U[a] == (1, -1): U[a] = (-1, 1) if U[a-1] == (1, 1): U[a-1] = (1, -1) U[a-2] = (-1, -1) else: U[a-1] = (-1, -1) U[a-2] = (1, -1) elif U[a] == (-1, 1): U[a] = (1, -1) if U[a-1] == (1, 1): U[a-1] = (-1, 1) U[a-2] = (-1, -1) else: U[a-1] = (-1, -1) U[a-2] = (-1, 1) else: U[a] = (-1, -1) print(len(list(S)))