結果
| 問題 |
No.267 トランプソート
|
| コンテスト | |
| ユーザー |
|
| 提出日時 | 2018-09-27 13:33:31 |
| 言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
| 結果 |
AC
|
| 実行時間 | 33 ms / 1,000 ms |
| コード長 | 2,006 bytes |
| コンパイル時間 | 101 ms |
| コンパイル使用メモリ | 12,800 KB |
| 実行使用メモリ | 11,136 KB |
| 最終ジャッジ日時 | 2024-10-12 04:27:31 |
| 合計ジャッジ時間 | 1,602 ms |
|
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
| ファイルパターン | 結果 |
|---|---|
| sample | AC * 3 |
| other | AC * 20 |
ソースコード
N = int(input())
l = list(map(str, input().split()))
D_l = []
C_l = []
H_l = []
S_l = []
df = 0
cf = 0
hf = 0
sf = 0
for l_i in l:
if l_i[0] == "D":
D_l.append(l_i)
if l_i[1] == "A":
df = 1
elif l_i[0] == "C":
C_l.append(l_i)
if l_i[1] == "A":
cf = 1
elif l_i[0] == "H":
H_l.append(l_i)
if l_i[1] == "A":
hf = 1
else:
S_l.append(l_i)
if l_i[1] == "A":
sf = 1
def card_sort(list):
list.sort()
if list[-1][1] == "Q":
if list[-2][1] == "K":
list[-1], list[-2] = list[-2], list[-1]
return list
else:
return list
elif list[-1][1] == "T":
if list[-2][1] == "Q":
list[-1], list[-2] = list[-2], list[-1]
if list[-3][1] == "K":
list[-3], list[-2] = list[-2], list[-3]
list[-1], list[-2] = list[-2], list[-1]
if list[-4][1] == "J":
list[-3], list[-4] = list[-4], list[-3]
elif list[-3][1] == "J":
list[-3], list[-2] = list[-2], list[-3]
elif list[-2][1] == "K":
list[-1], list[-2] = list[-2], list[-1]
if list[-3][1] == "J":
list[-3], list[-2] = list[-2], list[-3]
elif list[-2][1] == "J":
list[-1], list[-2] = list[-2], list[-1]
return list
else:
return list
if len(S_l) > 2:
S_l = card_sort(S_l)
if len(D_l) > 2:
D_l = card_sort(D_l)
if len(C_l) > 2:
C_l = card_sort(C_l)
if len(H_l) > 2:
H_l = card_sort(H_l)
if df == 1:
D_l.remove("DA")
D_l.insert(0, "DA")
if cf == 1:
C_l.remove("CA")
C_l.insert(0, "CA")
if hf == 1:
H_l.remove("HA")
H_l.insert(0, "HA")
if sf == 1:
S_l.remove("SA")
S_l.insert(0, "SA")
# print(D_l)
# print(C_l)
# print(H_l)
# print(S_l)
ans_l = D_l + C_l + H_l + S_l
ans = ""
for li in ans_l:
ans += li + " "
print(ans)