結果
問題 |
No.110 しましまピラミッド
|
ユーザー |
|
提出日時 | 2017-03-19 14:59:54 |
言語 | Python3 (3.13.1 + numpy 2.2.1 + scipy 1.14.1) |
結果 |
AC
|
実行時間 | 33 ms / 5,000 ms |
コード長 | 1,345 bytes |
コンパイル時間 | 417 ms |
コンパイル使用メモリ | 12,800 KB |
実行使用メモリ | 11,008 KB |
最終ジャッジ日時 | 2024-12-31 11:30:15 |
合計ジャッジ時間 | 2,544 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge4 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 26 |
ソースコード
Nw = int(input()) W = [int(i) for i in input().split()] Nb = int(input()) B = [int(i) for i in input().split()] W.sort(reverse=True) B.sort(reverse=True) ans = 1 tmp = 1 max_l = W[0] flag = True switch = 1 lw, lb = 0, 0 while flag: if switch == 0: for i in range(lw, Nw): if W[i] < max_l: max_l = W[i] switch ^= 1 tmp += 1 lw = i + 1 break else: flag = False else: for i in range(lb, Nb): if B[i] < max_l: max_l = B[i] switch ^= 1 tmp += 1 lb = i + 1 break else: flag = False ans = max(ans, tmp) max_l = B[0] flag = True switch = 0 lw, lb = 0, 0 tmp = 1 while flag: if switch == 0: for i in range(lw, Nw): if W[i] < max_l: max_l = W[i] switch ^= 1 tmp += 1 lw = i + 1 break else: flag = False else: for i in range(lb, Nb): if B[i] < max_l: max_l = B[i] switch ^= 1 tmp += 1 lb = i + 1 break else: flag = False ans = max(ans, tmp) print(ans)