xiahe999 发表于 2015-11-26 00:47:24

zoj 3778 Talented Chef 贪心

zoj 3778 Talented Chef

题意:

有n个饼,给出完成每个饼所需要的时间t1,t2,...,tn,现在有m个锅(也就是说可以同时煎m个饼),问完成所有饼至少需要多少时间。



限制:

1 <= n,m,ti <= 40000



思路:

贪心

ans=max(ceil(sigma(1~n,ti)/m),max(ti))



/*zoj 3778 Talented Chef
题意:
有n个饼,给出完成每个饼所需要的时间t1,t2,...,tn,现在有m个锅(也就是说可以同时煎m个饼),问完成所有饼至少需要多少时间。
限制:
1 <= n,m,ti <= 40000
思路:
贪心
ans=max(ceil(sigma(1~n,ti)/m),max(ti))
*/
#include<iostream>
#include<cstdio>
using namespace std;
int main(){
int T;
scanf(&quot;%d&quot;,&T);
while(T--){
int n,m;
scanf(&quot;%d%d&quot;,&n,&m);
int a;
int sum=0,_max=0;
for(int i=0;i<n;++i){
scanf(&quot;%d&quot;,&a);
sum+=a;
_max=max(_max,a);
}
int ans=max((sum+m-1)/m,_max);
printf(&quot;%d\n&quot;,ans);
}
return 0;
}
页: [1]
查看完整版本: zoj 3778 Talented Chef 贪心