Pagini recente » Cod sursa (job #846771) | Cod sursa (job #2439829) | Cod sursa (job #2109690) | Cod sursa (job #547176) | Cod sursa (job #423732)
Cod sursa(job #423732)
#include <stdio.h>
int max,p,l,n,i,v[400001],poz[400001],x;
int main() {
FILE *f=fopen("buline.in","r");
FILE *g=fopen("buline.out","w");
fscanf(f,"%d",&n);
for(i=1;i<=n;i++) {
fscanf(f,"%d%d",&v[i],&x);
if(x==0)
v[i]=-v[i];
}
for(i=1;i<=n;i++) {
v[n+i]=v[i];
}
for(i=1;i<=2*n;i++) {
if(v[i-1]<v[i]+v[i-1]) {
v[i]=v[i]+v[i-1];
poz[i]=poz[i-1];
}
else
poz[i]=i;
}
for(i=1;i<=2*n;i++)
if(v[i]>max) {
max=v[i];
p=poz[i];
l=i-p+1;
}
fprintf(g,"%d %d %d",max,p,l);
return 0;
}