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])