結果
問題 | No.2064 Smallest Sequence on Grid |
ユーザー |
![]() |
提出日時 | 2025-03-31 17:47:09 |
言語 | PyPy3 (7.3.15) |
結果 |
AC
|
実行時間 | 2,945 ms / 3,000 ms |
コード長 | 768 bytes |
コンパイル時間 | 302 ms |
コンパイル使用メモリ | 82,220 KB |
実行使用メモリ | 161,748 KB |
最終ジャッジ日時 | 2025-03-31 17:48:15 |
合計ジャッジ時間 | 25,937 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge2 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
sample | AC * 2 |
other | AC * 29 |
ソースコード
h, w = map(int, input().split()) grid = [input().strip() for _ in range(h)] current = set() current.add((0, 0)) result = [grid[0][0]] for _ in range(h + w - 2): next_cells = {} min_char = 'z' for (i, j) in current: for dx, dy in [(1, 0), (0, 1)]: ni, nj = i + dx, j + dy if ni < h and nj < w: char = grid[ni][nj] if (ni, nj) not in next_cells: next_cells[(ni, nj)] = char if char < min_char: min_char = char next_current = set() for (ni, nj), c in next_cells.items(): if c == min_char: next_current.add((ni, nj)) result.append(min_char) current = next_current print(''.join(result))