結果
問題 | No.1292 パタパタ三角形 |
ユーザー |
![]() |
提出日時 | 2020-11-20 22:08:39 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 131 ms / 2,000 ms |
コード長 | 1,045 bytes |
コンパイル時間 | 288 ms |
コンパイル使用メモリ | 82,268 KB |
実行使用メモリ | 108,160 KB |
最終ジャッジ日時 | 2024-07-23 13:06:37 |
合計ジャッジ時間 | 2,336 ms |
ジャッジサーバーID (参考情報) |
judge5 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 14 |
ソースコード
S = str(input())N = len(S)B = [[(2,0),(0,0)],[(0,1),(1,0)],[(1,0),(0,1)],[(0,0),(0,2)],[(-1,0),(0,1)],[(0,-1),(1,0)],\[(-2,0),(0,0)],[(0,-1),(-1,0)],[(-1,0),(0,-1)],[(0,0),(0,-2)],[(1,0),(0,-1)],[(0,1),(-1,0)]]#print(B)L = set()now = ((0,0),(0,0))L.add(now)a = 30; b = 150; c = 270for i in range(1,N+1):if S[i-1] == "a":move = a//30a = (a+180)%360if i%2 == 0:b = (a+120)%360c = (a+240)%360else:c = (a+120)%360b = (a+240)%360elif S[i-1] == "b":move = b//30b = (b+180)%360if i%2 == 0:a = (b+240)%360c = (b+120)%360else:c = (b+240)%360a = (b+120)%360else:move = c//30c = (c+180)%360if i%2 == 0:a = (c+120)%360b = (c+240)%360else:b = (c+120)%360a = (c+240)%360#print(move,B[move])nxt = ((now[0][0]+B[move][0][0],now[0][1]+B[move][0][1]),(now[1][0]+B[move][1][0],now[1][1]+B[move][1][1]))L.add(nxt)now = nxt#print(nxt,a,b,c)ans = len(L)print(ans)