Nu aveti permisiuni pentru a descarca fisierul grader_test8.in
Cod sursa(job #2790531)
Utilizator | Data | 29 octombrie 2021 10:39:37 | |
---|---|---|---|
Problema | Grupuri | Scor | 74 |
Compilator | cpp-64 | Status | done |
Runda | Arhiva de probleme | Marime | 0.71 kb |
#include <fstream>
using namespace std;
ifstream cin("grupuri.in");
ofstream cout("grupuri.out");
int v[100005],k,n;
int f(int a)
{
int cnt=0;
for(int i=1; i<=n; i++)
{
if(v[i]<=a)
cnt+=v[i];
else
cnt+=a;
}
if(cnt>=k*a)
return 1;
else return 0;
}
int main()
{
int sum=0;
cin>>k>>n;
for(int i=1; i<=n; i++)
{
cin>>v[i];
sum+=v[i];
}
int i1=1,i2=sum/k,mij,rez=-1;
while(i1<=i2)
{
mij=(i1+i2)/2;
if(f(mij)==1)
{
rez=mij;
i1=mij+1;
}
else
i2=mij-1;
}
cout<<rez;
return 0;
}