結果
問題 | No.2064 Smallest Sequence on Grid |
ユーザー | flygon |
提出日時 | 2022-09-18 23:27:41 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 1,790 ms / 3,000 ms |
コード長 | 658 bytes |
コンパイル時間 | 405 ms |
コンパイル使用メモリ | 82,264 KB |
実行使用メモリ | 105,980 KB |
最終ジャッジ日時 | 2024-12-22 01:52:16 |
合計ジャッジ時間 | 16,036 ms |
ジャッジサーバーID (参考情報) |
judge3 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 29 |
ソースコード
h,w = map(int,input().split()) s = [input() for i in range(h)] now = 0 l = set([(0,0)]) ans = s[0][0] while now < h+w-1: new = set() mn = "z" if (h-1, w-1) in l: break for i,j in l: if i == h-1: mn = min(mn, s[i][j+1]) elif j == w-1: mn = min(mn, s[i+1][j]) else: mn = min(mn, s[i][j+1], s[i+1][j]) for i,j in l: if i == h-1: if s[i][j+1] == mn: new.add((i,j+1)) elif j == w-1: if s[i+1][j] == mn: new.add((i+1,j)) else: if s[i][j+1] == mn: new.add((i,j+1)) if s[i+1][j] == mn: new.add((i+1,j)) l = new now += 1 ans += mn print(ans)