結果

問題 No.1512 作文
ユーザー lam6er
提出日時 2025-03-31 17:24:44
言語 PyPy3
(7.3.15)
結果
WA  
実行時間 -
コード長 718 bytes
コンパイル時間 531 ms
コンパイル使用メモリ 82,304 KB
実行使用メモリ 119,068 KB
最終ジャッジ日時 2025-03-31 17:25:09
合計ジャッジ時間 5,875 ms
ジャッジサーバーID
(参考情報)
judge1 / judge4
このコードへのチャレンジ
(要ログイン)
ファイルパターン 結果
sample AC * 4
other AC * 21 WA * 17
権限があれば一括ダウンロードができます

ソースコード

diff #

n = int(input())
good_strings = []

for _ in range(n):
    s = input().strip()
    is_good = True
    for i in range(1, len(s)):
        if s[i] < s[i-1]:
            is_good = False
            break
    if is_good and len(s) > 0:  # Ensure length is at least 1 as per input constraints
        first = s[0]
        last = s[-1]
        length = len(s)
        good_strings.append((first, last, length))

dp = [0] * 26

for first, last, length in good_strings:
    f = ord(first) - ord('a')
    l = ord(last) - ord('a')
    max_prev = 0
    for c in range(f + 1):
        if dp[c] > max_prev:
            max_prev = dp[c]
    new_val = max_prev + length
    if new_val > dp[l]:
        dp[l] = new_val

print(max(dp))
0