聊一下题解第一篇
  • 板块P1130 红牌
  • 楼主exdtables
  • 当前回复7
  • 已保存回复7
  • 发布时间2021/10/2 09:41
  • 上次更新2023/11/4 05:11:11
查看原帖
聊一下题解第一篇
359675
exdtables楼主2021/10/2 09:41

不用大家跳转,我发一下

#include<cstdio>
#include<algorithm>

const int maxn = 2005;
const int INF = 0x3f3f3f3f;

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

int main() {
    scanf("%d%d", &n, &m);
    for(int i = 1; i <= m; ++i)
        for(int j = 1; j <= n; ++j)
            scanf("%d", &a[j][i]);
    
    for(int i = 1; i <= n; ++i)
        for(int j = 1; j <= m; ++j)
            f[i][j] = std::min(f[i - 1][j], j == 1 ? f[i - 1][m] : f[i - 1][j - 1]) + a[i][j];
    
    int ans = INF;
    for(int i = 1; i <= m; ++i)
        ans = std::min(ans, f[n][i]);
    printf("%d", ans);
    
    return 0;
}

代码中的

for(int i = 1; i <= n; ++i)
    for(int j = 1; j <= m; ++j)

为什么顺序是这样的

2021/10/2 09:41
加载中...