题目地址:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3777
#include <iostream>
#include <algorithm>
#include <cstdio>
#include <cmath>
using namespace std;
#define REP(i,a,b) for(int i=a;i<(int)(b);++i)
#define REPD(i,a,b) for(int i=a;i>(int)(b);--i)
int main(int argc, char const *argv[])
{
int T; scanf("%d",&T);
while(T--){
int n,m; scanf("%d%d",&n, &m);
int Max=0,sum=0;
REP(i,0,n) {
int x; scanf("%d",&x);
Max=max(Max, x);
sum+=x;
}
if(n<=m) printf("%d\n", Max);
else cout<<max(Max, (int)ceil(double(sum)/m))<<endl;
}
return 0;
}