白駿16675両手
1545 ワード
質問する
https://www.acmicpc.net/problem/16675
に答える
ms1,ms2,tk1,tk2 = ('SPR'.index(i) for i in input().split())
check = False
if ms1 == ms2 :
if ms1 == 0:
if 2 in (tk1,tk2):
check = True
print("TK")
else:
if (ms1-1) in (tk1,tk2):
check = True
print("TK")
if tk1 == tk2:
if tk1 == 0:
if 2 in (ms1,ms2):
check = True
print("MS")
else:
if(tk1-1) in (ms1,ms2):
check = True
print("MS")
if check == False:
print("?")
結果
別の解釈
ms1,ms2,tk1,tk2 = ('SPR'.index(i) for i in input().split())
if ms1 == ms2 and (ms1+2)%3 in (tk1,tk2):
print("TK")
elif tk1 == tk2 and (tk1+2)%3 in (ms1,ms2):
print("MS")
else:
print('?')
新学
ms1,ms2,tk1,tk2 = ('SPR'.index(i) for i in input().split())
このような方法で受け取ったのは初めてのようです.
('ABC'.index('A'))
作ると出てくる
2 in (tk1,tk2)
このように2つの文字列をパレットに挿入し、特定の値が含まれているかどうかを検索します.
最初はtk 1,tk 2を1つのアレイに入れて、アレイに2があるかどうかを見るべきだと思いました.
球面アレイを作成して追加する必要はなく、tupleのようにk in(a,b)を直接比較することもできます.
もう1つはモジュール化演算を用いてコード量を減らす解である.
振り返ると、実行速度自体は同じです
この場合にモジュールを使えば、うまく使えるはずです.
終わります.
Reference
この問題について(白駿16675両手), 我々は、より多くの情報をここで見つけました https://velog.io/@kjo1130/백준-16675-두개의-손テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol