Cod sursa(job #1011355)

Utilizator CostanMiriamCostan Miriam CostanMiriam Data 16 octombrie 2013 19:28:32
Problema Buline Scor 30
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.77 kb
#include <fstream>
using namespace std;
ifstream fin ("buline.in");
ofstream fout ("buline.out");
int v[400001],i,j,q,n,a,b,sum,pmax,lmax,maxim;

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

    for (i=1;i<=n;i++) {
        sum=0;
        for (j=i,q=1;q<=n;j++,q++) {
            sum+=v[j];
            if (sum>maxim) {
                maxim=sum;
                lmax=q;
                pmax=i;
            }else
                if (sum==maxim && q<lmax) {
                    pmax=i;
                    lmax=q;
                }
        }
    }
    fout<<maxim<<" "<<pmax<<" "<<lmax<<"\n";

    return 0;
}