Pagini recente » Borderou de evaluare (job #2247405) | Borderou de evaluare (job #1465362) | Cod sursa (job #36905) | Cod sursa (job #909496) | Cod sursa (job #1506193)
#include <fstream>
using namespace std;
int main()
{
ifstream fin("grupuri.in");
ofstream fout("grupuri.out");
int mij,s[100000],i,k,n,sm=0,sc,dr=0,st=1,sol;
fin>>k>>n;
for(i=0;i<n;++i){
fin>>s[i];
sm+=s[i];
}
dr=sm/k;
while(st<=dr)
{
mij=(dr+st)/2;
sc=0;
for(i=0;i<n;++i)
if(s[i]>=mij) sc+=mij;
else sc+=s[i];
if(mij*k<=sc) {sol=mij;st=mij+1;}
else dr=mij-1;
}
fout<<sol;
return 0;
}