結果

問題 No.1292 パタパタ三角形
ユーザー persimmon-persimmonpersimmon-persimmon
提出日時 2021-02-15 20:22:53
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 744 bytes
コンパイル時間 458 ms
コンパイル使用メモリ 82,376 KB
実行使用メモリ 97,644 KB
最終ジャッジ日時 2024-07-23 12:14:16
合計ジャッジ時間 2,781 ms
ジャッジサーバーID
(参考情報)
judge4 / judge2
このコードへのチャレンジ
(要ログイン)

テストケース

テストケース表示
入力 結果 実行時間
実行使用メモリ
testcase_00 AC 38 ms
53,812 KB
testcase_01 AC 37 ms
53,220 KB
testcase_02 AC 37 ms
53,492 KB
testcase_03 AC 38 ms
52,268 KB
testcase_04 AC 38 ms
53,352 KB
testcase_05 WA -
testcase_06 WA -
testcase_07 WA -
testcase_08 WA -
testcase_09 WA -
testcase_10 WA -
testcase_11 WA -
testcase_12 AC 120 ms
97,612 KB
testcase_13 AC 124 ms
97,644 KB
testcase_14 AC 65 ms
75,896 KB
testcase_15 AC 64 ms
75,908 KB
testcase_16 AC 64 ms
75,780 KB
権限があれば一括ダウンロードができます

ソースコード

diff #

s=input()
# 正三角形を直角二等辺三角形にする。
# 三点x,y,z=(0,0),(1,0),(0,1)
# a=yz,b=xy,c=xzとする
# 三点の合計ベクトルと三角形の位置は一対一に対応する
x,y,z=[0,0],[1,0],[0,1]
seen={(1,1)}
for si in s:
  if si=='a':
    # y,zはそのまま。xが動く。
    # yzは斜線
    if y[0]==x[0]:
      x=[z[0],y[1]]
    else:
      x=[y[0],z[1]]
  elif si=='b':
    # x,yはそのまま。zが動く。
    if z[0]==x[0]:
      z=[z[0],2*x[1]-z[1]]
    else:
      z=[2*x[0]-z[0],z[1]]
  else:
    # x,zはそのまま。yが動く。
    if y[0]==x[0]:
      y=[y[0],2*x[1]-y[1]]
    else:
      y=[2*x[0]-y[0],y[1]]
  v0=x[0]+y[0]+z[0]
  v1=x[1]+y[1]+z[1]
  seen.add((v0,v1))

print(len(seen))


0