Pagini recente » Cod sursa (job #2368747) | Cod sursa (job #2049607) | Cod sursa (job #1378250) | Cod sursa (job #1014646) | Cod sursa (job #671300)
Cod sursa(job #671300)
#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;
}