Pagini recente » Cod sursa (job #650313) | Cod sursa (job #986536) | Cod sursa (job #895305) | Cod sursa (job #269419) | Cod sursa (job #1533785)
#include <fstream>
const int INFINIT=2147483648;
const int NMAX=400000;
using namespace std;
long long sp[NMAX+1];
long long b[NMAX+1];
int p[NMAX+1];
int nr[NMAX+1];
ifstream cin("buline.in");
ofstream cout("buline.out");
int main()
{
int a,nrv,n,max2=0,i,pmin=0,maxx=-INFINIT ,minn;
cin>>n;
b[0]=0;
minn=0;
for(i=1;i<=n;i++)
{
cin>>a>>nrv;
if(nrv==0)
nrv=a*-1;
else
nrv=a;
nr[i]=nrv;
sp[i]=sp[i-1]+nrv;
}
for(i=n+1;i<2*n;i++)
{
sp[i]=sp[i-1]+nr[i-n];
}
for(i=1;i<2*n;i++)
{
b[i]=sp[i]-minn;
p[i]=pmin+1;
if(sp[i]<minn)
{
minn=sp[i];
pmin=i;
}
if(b[i]>maxx)
{
max2=i;
maxx=b[i];
}
}
cout<<b[max2]<<" "<<p[max2]<<" "<<max2-p[max2]+1;
return 0;
}