Cod sursa(job #3246219)

Utilizator LucaMirsolea14Luca Mirsolea LucaMirsolea14 Data 2 octombrie 2024 12:17:17
Problema Subsecventa de suma maxima Scor 100
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.66 kb
#include<fstream>
#include<algorithm>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
int main(){
int i,n,smax=0,s,st=0,x,dr=0,ii,jj,lg=0,lgmax;
fin>>n;
fin>>x;
s=smax=x;
lg=1;
lgmax=1;
dr=1;
for(i=2;i<=n;i++){
    fin>>x;
    if(s+x>=x){
        s=s+x;
        lg++;
    }
    else{
        s=x;
        lg=1;
    }
    if(s>smax){
        smax=s;
        lgmax=lg;
        dr=i;
    }
    else{
        if(s==smax){
            if(lg<lgmax){
                lgmax=lg;
                dr=i;
            }
        }
    }
    //fout<<smax<<" "<<dr-lgmax+1<<" "<<dr<<'\n';
}
fout<<smax<<" "<<dr-lgmax+1<<" "<<dr;
}