CF416B 1300

题意


解析

f[i][j]代表第i幅画最后一次被j画了所花的时间,受到两个的限制,画当前这个画的前一个画家画完了,当前这个画家画完了前面那张画了,取max。

代码

#include<bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 5e4 + 10,M = 1e6 + 10;
int t[N][10],n,m,a[N],b[N],s[N],f[N][10];
int main(){
    scanf("%d %d",&m,&n);

    for(int i=1;i<=m;i++){
        for(int j=1;j<=n;j++){
            scanf("%d",&t[i][j]);//第j个画家画第i幅画
        }
    }
    for(int i=1;i<=m;i++){
        for(int j=1;j<=n;j++){
            f[i][j] = max(f[i][j-1] + t[i][j],f[i-1][j] + t[i][j]);
        }
    }

    for(int i=1;i<=m;i++){
        printf("%d ",f[i][n]);
    }
    // f[i][j] 第i幅画最后一次被j画了所花的时间

    return 0;
}
posted @   Isaac233  阅读(11)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示