Cod sursa(job #527450)
| Utilizator | Data | 31 ianuarie 2011 17:19:00 | |
|---|---|---|---|
| Problema | Transport | Scor | 0 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.46 kb |
#include <fstream.h>
int main()
{
int n,k,a[50],s=0,i,m,j=0,smax=0,max;
ifstream f("transport.in");
ofstream g("transport.out");
f>>n>>k;
for (i=0;i<n;i++)
f>>a[i];
for (i=0;i<n;i++)
s=s+a[i];
m=(int)(s/k);
i=0;
max=-INT_MAX;
for (i=0;i<n;i++)
{
if (smax<=m)
smax=smax+a[i];
if (smax>m)
a[i+1]=a[i+1]+(smax-m);
if (smax>max)
{
max=smax;
smax=0;
}
}
g<<smax;
f.close();
g.close();
return 0;
}