Pagini recente » Cod sursa (job #504826) | Cod sursa (job #628016) | Cod sursa (job #390296) | Cod sursa (job #1863280) | Cod sursa (job #1053305)
#include<iostream>
#include<fstream>
using namespace std;
ifstream f("buline.in");
ofstream g("buline.out");
#define MAXN 400005
long int N,sum=0,bestsum=-10001;
int bilete[MAXN],buline,culoare,i,index=0,b=0,e=0;
int main()
{
f>>N;
for(i=1;i<2*N;i++)
if(i<=N)
{
f>>buline>>culoare; if(culoare==0) bilete[i]=-buline; else bilete[i]=buline;
}
else
bilete[i]=bilete[i-N];
for(i=1;i<2*N-1;i++)
{
if(sum<0)
{
sum=bilete[i]; index=i;
}
else
sum=sum+bilete[i];
if(bestsum<sum)
{
bestsum=sum; b=index; e=i;
}
}
g<<bestsum<<" "<<b<<" "<<e-b+1;
f.close();
g.close();
return 0;
}