Pagini recente » Cod sursa (job #1623234) | Cod sursa (job #2575306) | Cod sursa (job #2511747) | Cod sursa (job #1649832) | Cod sursa (job #1023817)
#include<iostream>
#include<fstream>
using namespace std;
int k, n, v[100000];
int check( int nr)
{
int i, s = 0;
for( i = 0; i < n; i ++ )
if( v[i] > nr)
s += nr;
else
s += v[i];
if( s < nr * k )
return 0;
return 1;
}
long long binary_searchh(long long m)
{
long long i, pas=1<<30;
for(i = 0; pas; pas >>= 1)
if(i + pas < m && check( i + pas) == 1)
i += pas;
return i ;
}
int main()
{
ifstream f("grupuri.in");
ofstream g("grupuri.out");
f >> k >> n;
long long i;
for(i = 0; i < n; i ++)
f >> v[i];
g<<binary_searchh(10000000000);
}