Cod sursa(job #3308765)

Utilizator mihai.25Calin Mihai mihai.25 Data 27 august 2025 21:19:29
Problema Buline Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.91 kb
#include <fstream>
using namespace std;
ifstream cin("buline.in");
ofstream cout("buline.out");
long long int n, x, c, v[200005], smax, sum, st, a,b;
int main()
{
    cin>>n;
    for(int i=1; i<=n;i++){
        cin>>x>>c;
        if(c==0) v[i]=-x;
            else v[i]=x;
    }
    smax=-1e18, st=1;
    for(int i=1; i<=n;i++){
        sum+=v[i];
        if(sum>smax){
            smax=sum;
            a=st; b=i;
        }
        if(sum<0){
            st=i+1;
            sum=0;
        }
    }
    int smin=0, c, d, suma=0;
    sum=0; st=1;
    for(int i=1; i<=n;i++){
        sum+=v[i]; suma+=v[i];
        if(sum<smin){
            smin=sum;
            c=st; d=i;
        }
        if(sum>0){
            sum=0;
            st=i+1;
        }
    }
    suma-=smin;
    if(suma>smax)
        cout<<suma<<' '<<d+1<<' '<<n-(d-c+1);
    else cout<<smax<<' '<<a<<' '<<b-a+1;
    return 0;
}