Pagini recente » Cod sursa (job #385513) | Cod sursa (job #2007722) | Cod sursa (job #2565983) | Cod sursa (job #1275402) | Cod sursa (job #2910856)
#include <fstream>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <climits>
#include <ctype.h>
#define MAX 100000000
using namespace std;
//ifstream f("in.in");
//ofstream g("out.out");
ifstream f("grupuri.in");
ofstream g("grupuri.out");
int k,n,sol,v[100005];
int sum=0;
bool solve(int num){
int s=0;
for(int i=1;i<=n;i++){
s+=min(num,v[i]);
}
if(s>=num*k){
return 1;
}
return 0;
}
int main(){
f>>k>>n;
for(int i=1;i<=n;i++){
f>>v[i];
sum+=v[i];
}
int st=0,dr = sum/k;
while(st<=dr){
int mij = (st+dr)/2;
if(solve(mij)==1){
sol=mij;
st = mij+1;
}else{
dr=mij-1;
}
}
g<<sol;
f.close();
g.close();
return 0;
}