Cod sursa(job #198408)

Utilizator crisy_girlpop cristina crisy_girl Data 11 iulie 2008 12:29:52
Problema Grupuri Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.57 kb
#include <stdio.h>

int K,N,A[1000];

inline int min(int nr1,int nr2)
{
	return nr1 < nr2 ? nr1 : nr2;
}

int main();
{
	freopen("grupuri.in","r",stdin);
	freopen("grupuri.out","w",stdout);
	scanf("%d %d", &K, &N);
	for (int i = 1; i<=N ; ++i)
		scanf("%d", A[i]);
	int ri = 10000,le = 0,nrg = 0,gasit = 0,minim = 0;
	while (gasit != 1)
	{
		nrg = (ri + le) / 2;
		for (int i = 1; i<=N ; ++i)
			minim += min(nrg,A[i]);
		if ((nrg * K) - minim) > 0)		ri = nrg+1;
		else
		if ((nrg * K) - minim) < 0) le = nrg ;
		else gasit = 1;
	}
	printf("%d",nrg)
}