Cod sursa(job #91986)
Utilizator | Ionut Popa 100puncte | Data | 14 octombrie 2007 02:22:56 |
---|---|---|---|
Problema | Grupuri | Scor | 100 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.52 kb |
/*
100p
*/
#include<stdio.h>
#include<math.h>
long long n, k, a[100701];
long long solve(long long n,long long sum,long long k)
{
if (n<0 || k<=0) return 0;
if (a[n]<=sum/(long)k) return sum/(long)k;
return solve(n-1,sum-a[n],k-1);
}
int main()
{
long long i, sum=0;
freopen("grupuri.in","r",stdin);
freopen("grupuri.out","w",stdout);
scanf ("%lld%lld",&k,&n);
for (i=0; i<n; i++)
{
scanf("%lld",&a[i]); sum+=(long)a[i];
}
printf("%lld\n",solve(n-1,sum,k));
return 0;
}