Submission
Status:
[PPPPPPPPPPPPPPP]
Subtask/Task Score:
{100/100}
Score: 100
User: SnowAveNode
Problemset: อัศวินขี่ม้าขาว
Language: python
Time: 0.610 second
Submitted On: 2026-04-22 16:33:19
import sys
input = sys.stdin.readline
n,m=map(int,input().split())
grid=[list(map(int,input().split())) for _ in range(n)]
dp=[float('inf')]*(m+2)
for i in range(n,0,-1):
for j in range(m,0,-1):
if i==n and j==m:
dp[j]=max(1,1-grid[i-1][j-1])
else:
res=min(dp[j],dp[j+1])
dp[j]=max(1,res-grid[i-1][j-1])
print(dp[1])