Pagini recente » Cod sursa (job #2334738) | Cod sursa (job #749653) | Cod sursa (job #769367) | Cod sursa (job #1542031) | Cod sursa (job #2398995)
/// grupuri
//#include <iostream>
#include <fstream>
using namespace std;
long long n,k,v[100005],solutie;
bool valid(long long a){
long long suma=0;
for(int i=1;i<=n;i++){
suma+=min(v[i],a);
}
if(suma>=a*k)
return true;
return false;
}
void cautbin(long long st,long long dr){
if(st>dr){
return;
}
long long mid=(st+dr)/2;
if(valid(mid)==true){
st=mid+1;
solutie=mid;
}
else
dr=mid-1;
cautbin(st,dr);
}
int main()
{
ifstream cin("grupuri.in");
ofstream cout("grupuri.out");
long long suma=0;
cin>>k>>n;
for(int i=1;i<=n;i++){
cin>>v[i];
suma+=v[i];
}
cautbin(1,suma);
cout<<solutie;
return 0;
}