Pagini recente » Cod sursa (job #2376626) | Cod sursa (job #2726739) | Cod sursa (job #1927297) | Cod sursa (job #959507) | Cod sursa (job #3180582)
#include <bits/stdc++.h>
using namespace std;
ifstream fin ("grupuri.in");
ofstream fout ("grupuri.out");
long long int v[100001];
int main()
{
long long int n, m, sum = 0;
fin >> n >> m;
for (long long int i = 1; i <= m; i ++)
{
fin >> v[i];
sum += v[i];
}
long long st = 1, dr = sum, rasp = 1;
while (st <= dr)
{
long long mij = (st + dr) / 2, s = 0;
for (long long int i = 1; i <= m; i ++)
s += min(v[i], mij);
if (s >= n * mij)
st = mij + 1, rasp = mij;
else
dr = mij - 1;
}
fout << rasp;
return 0;
}