竞赛讨论区 > 回顾~~~
头像
cool-wangtongzhou
编辑于 2022-11-01 18:32 广东
+ 关注

回顾~~~



#include<iostream>  using namespace std;

const int N = 1010;

int n, m;
int f[N][N];
int a[N][N];

int main() {
    cin >> n >> m;
    
    for(int i = 1; i <= n; ++i) {
        for(int j = 1; j <= m; ++j) {
            scanf("%1d", &a[i][j]);
            a[i][j]++;
        }
    }
    // f[][]是全局变量,所以f[1][1]默认是0,注意这里没有加上a[1][1]哦!!
    // 不要把a[][]和f[][]混了
    for(int i = 2; i <= n; ++i) f[i][1] = f[i-1][1] + a[i][1];
    for(int i = 2; i <= m; ++i) f[1][i] = f[1][i-1] + a[1][i];
    
    
    for(int i = 2; i <= n; ++i) {
        for(int j = 2; j <= m; ++j) {
            f[i][j] = min(f[i-1][j], f[i][j-1]) + a[i][j];
        }
    }
    
    cout << f[n][m];
}


全部评论

(0) 回帖
加载中...
话题 回帖

等你来战

查看全部

热门推荐