Cod sursa(job #671300)

Utilizator bacilaBacila Emilian bacila Data 31 ianuarie 2012 09:38:59
Problema Euro Scor 25
Compilator cpp Status done
Runda Lista lui wefgef Marime 0.56 kb
#include <fstream>
using namespace std;
long long sum,rez,tot[34570],s,x,t,n,i,k,inv[34570],in;
int main()
{
ifstream f("euro.in");
ofstream g("euro.out");
f>>n>>t;
for(i=1;i<=n;i++)
{f>>x;
s+=x;
if(s<0)
{tot[++k]=s; s=0;
inv[k]=i;}  
}
if(s)
{tot[++k]=s;
inv[k]=n;}

rez=tot[1]*inv[1]-t;
in=inv[1];
for(i=2;i<=k;i++)
{
                 if(((rez+t)/in+ tot[i])*inv[i]-t>rez+tot[i]*inv[i]-t)
{rez=((rez+t)/in+tot[i])*inv[i]; in=inv[i];}
else
{sum+=rez;
rez=tot[i]*inv[i]-t; in=inv[i];}
}

g<<sum+rez;

f.close();
g.close();  
    return 0;
}