結果
問題 | No.910 素数部分列 |
ユーザー |
|
提出日時 | 2022-08-03 02:20:38 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 109 ms / 1,000 ms |
コード長 | 849 bytes |
コンパイル時間 | 527 ms |
コンパイル使用メモリ | 82,292 KB |
実行使用メモリ | 131,056 KB |
最終ジャッジ日時 | 2024-07-23 20:27:06 |
合計ジャッジ時間 | 6,449 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 3 |
other | AC * 50 |
ソースコード
N = int(input())lsS = list(map(int,list(input())))cnt = 0lsS1 = []pS = set([3,5,7])for i in range(N):if lsS[i] in pS:cnt += 1else:lsS1.append(lsS[i])cn1 = 0cn19 = 0for s in lsS1:if s == 1:cn1 += 1else:if cn1 > 0:cnt += 1cn19 += 1cn1 -= 1ls3 = []cn19_ = cn19for s in range(len(lsS1)-1,-1,-1):if cn19_>0 and (lsS1[s]==9):cn19_ -= 1else:ls3.append(lsS1[s])ls3.reverse()ls4 = []cn19_ = cn19for s in range(len(ls3)):if cn19_>0 and (ls3[s]==1):cn19_ -= 1else:ls4.append(ls3[s])cn1 = 0cn9 = 0for i in range(len(ls4)):if ls4[i] == 9:cn9 += 1else:if cn9 >= 2:cnt += 1cn9 -= 2else:cn1 += 1cnt += cn1//2print(cnt)