Cod sursa(job #2228522)

Utilizator radugheoRadu Mihai Gheorghe radugheo Data 4 august 2018 02:06:35
Problema Buline Scor 20
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.82 kb
#include <fstream>

using namespace std;

ifstream fin ("buline.in");
ofstream fout ("buline.out");

int n, i, a, b, v[400005];

void ssm ()
{
    int i, i1, i2, cnt = 0;
    long long sum, m;
    sum = m = v[1];
    for (i=2; i<2*n; i++){
        if (sum < 0){
            sum = v[i];
            cnt = 1;
        }
        else{
            sum += v[i];
            cnt++;
        }
        if (sum > m){
            m = sum;
            i1 = i - cnt + 1;
            i2 = i;
        }
    }
    fout << m << " " << i1 << " " << i2 - i1 + 1;
}

int main()
{
    fin >> n;
    for (i=1; i<=n; i++){
        fin >> a >> b;
        if (b == 0)
            v[i] = -a;
        else
            v[i] = a;
    }
    for (; i<2*n; i++){
        v[i] = v[i-n];
    }
    ssm();
    return 0;
}