题目链接:Codeforces 416B Art Union
题目大意:有n个画家,有m幅画需要完成,画家们采用流水线的方式作业,给出每幅画经过每个画家的所需要的时间,问说每幅画被完成的时间。画必须按照序号被完成。
解题思路:开一个t数组,记录每个画家完成上一个画得时间。然后当每幅画到达一个画家手里时,选取t值和到达时间中最长的作为起始时间(必须的),完成则加上该画家完成该画得工作时间,注意更新t数组。、
#include <stdio.h>
#include <string.h>
#include <algorithm>
using namespace std;
const int N = 50005;
int m, n, ans[N];
int main () {
int v[10];
memset(v, 0, sizeof(v));
scanf("%d%d", &m, &n);
for (int i = 1; i <= m; i++) {
int t = 0, a;
for (int j = 0; j < n; j++) {
scanf("%d", &a);
int s = max(v[j], t);
t = s + a;
v[j] = t;
}
ans[i] = t;
}
for (int i = 1; i < m; i++)
printf("%d ", ans[i]);
printf("%d\n", ans[m]);
return 0;
}