Pagini recente » Cod sursa (job #799898) | Cod sursa (job #298350) | Cod sursa (job #2856863) | Cod sursa (job #2303865) | Cod sursa (job #1053296)
#include<iostream>
#include<fstream>
using namespace std;
ifstream r("buline.in");
ofstream w("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()
{
r>>N;
for(i=1;i<2*N;i++)
if(i<=N)
{
r>>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;
}
}
w<<bestsum<<" "<<b<<" "<<e-b+1;
// r.close();
// w.close();
return 0;
}