結果
問題 | No.1512 作文 |
ユーザー |
|
提出日時 | 2021-05-21 21:53:38 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 254 ms / 2,000 ms |
コード長 | 514 bytes |
コンパイル時間 | 276 ms |
コンパイル使用メモリ | 82,432 KB |
実行使用メモリ | 99,100 KB |
最終ジャッジ日時 | 2024-10-10 08:26:43 |
合計ジャッジ時間 | 5,100 ms |
ジャッジサーバーID (参考情報) |
judge2 / judge1 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 38 |
ソースコード
n = int(input()) L = [[] for i in range(26)] for i in range(n): S = input() l = [-1] check = True for s in S: now = ord(s)-ord("a") if now < l[-1]: check = False break l.append(now) if check == False: continue L[l[1]].append([l[-1],len(l)-1]) dp = [0]*26 for i in range(26): dp[i] = max(dp[i],dp[i-1]) if L[i] == []: continue L[i].sort() for r,le in L[i]: dp[r] = max(dp[r],dp[i]+le) print(dp[-1])