結果
問題 | No.1512 作文 |
ユーザー | marroncastle |
提出日時 | 2021-05-21 22:51:58 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 273 ms / 2,000 ms |
コード長 | 378 bytes |
コンパイル時間 | 413 ms |
コンパイル使用メモリ | 82,384 KB |
実行使用メモリ | 85,824 KB |
最終ジャッジ日時 | 2024-10-10 09:34:43 |
合計ジャッジ時間 | 5,004 ms |
ジャッジサーバーID (参考情報) |
judge1 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 4 |
other | AC * 38 |
ソースコード
N = int(input()) dp = [0]*26 S = [input() for _ in range(N)] S.sort() for i in range(N): now = 0 for s in S[i]: num = ord(s)-ord('a') if num<now: break now = num else: new_dp = dp[:] for j in range(ord(S[i][0])-ord('a')+1): new_dp[ord(S[i][-1])-ord('a')] = max(new_dp[ord(S[i][-1])-ord('a')], dp[j]+len(S[i])) dp = new_dp print(max(dp))