[ZOJ 3778] Talented Chef
Posted youpeng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了[ZOJ 3778] Talented Chef相关的知识,希望对你有一定的参考价值。
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=5265
想多了
如果m >= n,肯定时n个dish中用时最多的
如果m < n,计算一下平均用时,即ave = sum / m,注意除不尽加1,然后和这n个dish中最大的值比较,如果ave小于最大的,那么用时为最大的,否则为ave。
AC代码:
#include <cstdio>
using namespace std;
int test;
int n, m;
int x;
long long sum;
long long maxn;
int main() {
scanf("%d", &test);
while (test--) {
sum = 0;
maxn = -1;
scanf("%d%d", &n, &m);
for (int i = 0; i < n; i++) {
scanf("%d", &x);
sum += x;
if (maxn < x) {
maxn = x;
}
}
if (n <= m) {
printf("%lld\n", maxn);
} else {
long long ave = sum / m;
if (sum % m) {
ave += 1;
}
if (ave < maxn) {
printf("%lld\n", maxn);
} else {
printf("%lld\n", ave);
}
}
}
return 0;
}
以上是关于[ZOJ 3778] Talented Chef的主要内容,如果未能解决你的问题,请参考以下文章
[zoj] 3229 Shoot the Bullet || 有源汇上下界最大流