提交时间:2023-04-11 14:00:48

运行 ID: 74033

#include<bits/stdc++.h> using namespace std; double b[1005][1005]; int a[1005][1005]; int main() { int n,m,k,x,y; cin>>n>>m>>k; for(int i=1;i<=k;i++) { cin>>x>>y; a[x][y]=1; } for(int i=1;i<=n;i++) { b[i][0]=i*100; } for(int i=1;i<=m;i++) { b[0][i]=i*100; } for(int i=1;i<=n;i++) { for(int j=1;j<=m;j++) { if(a[i][j]==1) { b[i][j]=min(min(b[i-1][j]+100,b[i][j-1]+100),b[i-1][j-1]+141.42); } else { b[i][j]=min(b[i-1][j]+100,b[i][j-1]+100); } } } cout<<int(b[n][m]+0.5); return 0; }