Pagini recente » Cod sursa (job #2471768) | Cod sursa (job #2783267) | Cod sursa (job #1086491) | Cod sursa (job #1920143) | Cod sursa (job #2353640)
#include <fstream>
using namespace std;
long long n, k, st, dr, a[100001], s, i, mid;
int numar (int x)
{
long long nr=0;
for (i=1;i<=n;i++) {
if (a[i]<x) {
nr+=a[i];
}else
nr+=x;
}
if (nr>=k*x)
return 1;
return 0;
}
int main () {
ifstream fin ("grupuri.in");
ofstream fout ("grupuri.out");
fin>>k>>n;
for (i=1;i<=n;i++) {
fin>>a[i];
s+=a[i];
}
st=1;
dr=s/k;
while (st<=dr) {
mid = (st+dr)/2;
if (numar(mid))
st=mid+1;
else
dr=mid-1;
}
fout<<dr;
return 0;
}