結果
問題 | No.267 トランプソート |
ユーザー | ssmkzk |
提出日時 | 2018-09-27 13:33:31 |
言語 | Python3 (3.12.2 + numpy 1.26.4 + scipy 1.12.0) |
結果 |
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 |
(要ログイン)
テストケース
テストケース表示入力 | 結果 | 実行時間 実行使用メモリ |
---|---|---|
testcase_00 | AC | 31 ms
11,008 KB |
testcase_01 | AC | 31 ms
11,008 KB |
testcase_02 | AC | 30 ms
11,008 KB |
testcase_03 | AC | 31 ms
11,136 KB |
testcase_04 | AC | 32 ms
11,008 KB |
testcase_05 | AC | 33 ms
11,008 KB |
testcase_06 | AC | 30 ms
10,880 KB |
testcase_07 | AC | 31 ms
10,880 KB |
testcase_08 | AC | 31 ms
11,008 KB |
testcase_09 | AC | 31 ms
11,008 KB |
testcase_10 | AC | 31 ms
10,880 KB |
testcase_11 | AC | 31 ms
11,008 KB |
testcase_12 | AC | 30 ms
11,008 KB |
testcase_13 | AC | 31 ms
11,008 KB |
testcase_14 | AC | 31 ms
11,008 KB |
testcase_15 | AC | 31 ms
11,008 KB |
testcase_16 | AC | 30 ms
11,008 KB |
testcase_17 | AC | 31 ms
11,008 KB |
testcase_18 | AC | 30 ms
11,008 KB |
testcase_19 | AC | 30 ms
11,008 KB |
testcase_20 | AC | 31 ms
11,008 KB |
testcase_21 | AC | 31 ms
10,880 KB |
testcase_22 | AC | 30 ms
11,136 KB |
ソースコード
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)