Cod sursa(job #3165289)

Utilizator biancalautaruBianca Lautaru biancalautaru Data 5 noiembrie 2023 19:49:56
Problema Buline Scor 100
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.92 kb
#include <fstream>
#include <climits>
using namespace std;
ifstream fin("buline.in");
ofstream fout("buline.out");
int n,x,k,sum,smax,pmax,lmax,smin,pmin,lmin,p1,p2,maxi,mini;
int main() {
    fin>>n;
    maxi=INT_MIN;
    mini=INT_MAX;
    for (int i=1;i<=n;i++) {
        fin>>x>>k;
        if (k==0)
            x=-x;
        sum+=x;
        if (smax<0) {
            smax=x;
            p1=i;
        }
        else
            smax+=x;
        if (smax>maxi) {
            maxi=smax;
            pmax=p1;
            lmax=i-p1+1;
        }
        if (smin>=0) {
            smin=x;
            p2=i;
        }
        else
            smin+=x;
        if (smin<mini) {
            mini=smin;
            pmin=i+1;
            lmin=n-(i-p2+1);
        }
    }
    if (maxi>sum-mini)
        fout<<maxi<<" "<<pmax<<" "<<lmax;
    else
        fout<<sum-mini<<" "<<pmin<<" "<<lmin;
    return 0;
}