Bryson • 21天前
#include <bits/stdc++.h>
using namespace std;
int dp[2005][2005];
int a[2005][2005];
int main() {
std::ios::sync_with_stdio(false);
cin.tie(0),cout.tie(0);
int m,n;
cin>>m>>n;
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++)
cin>>a[i][j];
}
// for(int i=1;i<=n;i++)
// dp[1][i]=a[i][1];
for(int j=1;j<=m;j++){
for(int i=1;i<=n;i++){
dp[j][i] = min(dp[j - 1][i],(i == 1 ? dp[j - 1][n] : dp[j - 1][i - 1])) + a[i][j];
}
}
int minn=INT_MAX;
for(int i=1;i<=n;i++){
minn=min(minn,dp[m][i]);
}
// for(int i=1;i<=n;i++){
// for(int j=1;j<=m;j++)
// cout<<dp[j][i]<<" ";
// cout<<'\n';
// }
//
cout<<minn;
return 0;
}
评论:
请先登录,才能进行评论