Pagini recente » Cod sursa (job #2087657) | Cod sursa (job #2601394) | Cod sursa (job #1149603) | Cod sursa (job #2960956) | Cod sursa (job #3165838)
#include <bits/stdc++.h>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int n,nr,culoare,maxi=INT_MIN,mini=INT_MAX,smin,smax,suma,lmini,lmaxi,poz1,poz1f,poz2,poz2f;
int main()
{
fin>>n;
for(int i=1;i<=n;i++)
{
fin>>nr>>culoare;
if(culoare==0)
nr=-nr;
suma+=nr;
if(smax<0)
{
smax=nr;
poz1=i;
}
else
smax+=nr;
if(smax>maxi)
{
maxi=smax;
poz1f=poz1;
lmaxi=i-poz1+1;
}
if(smin>0)
{
smin=nr;
poz2=i;
}
else
smin+=nr;
if(smin<mini)
{
mini=smin;
poz2f=i+1;
lmini=n-i+poz2-1;
}
}
if(maxi>suma-mini)
fout<<maxi<<' '<<poz1f<<' '<<lmaxi;
else
fout<<suma-mini<<' '<<poz2f<<' '<<lmini;
return 0;
}