Pagini recente » Cod sursa (job #620368) | Cod sursa (job #619253) | Cod sursa (job #2770979) | Cod sursa (job #892949) | Cod sursa (job #3289757)
#include <iostream>
#include <fstream>
#define int long long
using namespace std;
ifstream fin("grupuri.in");
ofstream fout("grupuri.out");
const int MAX=1e5;
int v[MAX+5],n,k,i,st,dr,mij,sum,sol,sum2;
bool verif(int val)
{
int sum=0;
for (int i=1; i<=n; i++)
sum+=min(v[i],val);
return (sum>=val*k);
}
signed main()
{
fin>>k>>n;
for (i=1; i<=n; i++)
{
fin>>v[i];
sum2+=v[i];
}
st=1; dr=sum2/k;
while (st<=dr)
{
mij=(st+dr)>>1;
if (verif(mij))
{
sol=mij;
st=mij+1;
}
else
dr=mij-1;
}
fout<<sol;
return 0;
}