Pagini recente » Istoria paginii runda/the.first.infoarenaut | Istoria paginii runda/guta_contest | Istoria paginii runda/oni_contest | Istoria paginii runda/cmnv_01/probleme | Cod sursa (job #2308994)
#include <bits/stdc++.h>
using namespace std;
ifstream f ("grupuri.in");
ofstream g ("grupuri.out");
int main()
{
int N,K;
uint64_t s=0;
f>>K>>N;
vector<int> V(N+1);
for(int i=1;i<=N;i++)
f>>V[i], s+=V[i];
for(int l=1,r=s/K,m;l<=r;s=0)
{
m=(l+r)/2;
for(int i=1;i<=N;s+=min(m,V[i++]));
if(s>=K*m) l=m+1;
else r=m-1;
if(l>r) g<<r;
}
return 0;
}