結果
問題 | No.2064 Smallest Sequence on Grid |
ユーザー |
👑 |
提出日時 | 2022-09-02 21:26:28 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 954 ms / 3,000 ms |
コード長 | 690 bytes |
コンパイル時間 | 396 ms |
コンパイル使用メモリ | 82,300 KB |
実行使用メモリ | 97,548 KB |
最終ジャッジ日時 | 2024-11-16 02:16:58 |
合計ジャッジ時間 | 10,093 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 29 |
ソースコード
h, w = map(int, input().split()) S = [input() for _ in range(h)] def f(i, j): return i * w + j ans = [S[0][0]] se = {0} for _ in range(h + w - 2): nex = set() mi = "z" for p in se: i = p // w j = p - i * w if i != h - 1: s = S[i + 1][j] if s < mi: mi = s nex = {f(i + 1, j)} elif s == mi: nex.add(f(i + 1, j)) if j != w - 1: s = S[i][j + 1] if s < mi: mi = s nex = {f(i, j + 1)} elif s == mi: nex.add(f(i, j + 1)) ans.append(mi) se = nex print(*ans, sep="")