Cod sursa(job #3333885)

Utilizator Maryy_1369Gociu Maria Anastasia Maryy_1369 Data 15 ianuarie 2026 15:28:05
Problema Subsecventa de suma maxima Scor 25
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>
#include<algorithm>
#include<stack>
#include<string>
#include<vector>
using namespace std;

ifstream cin("ssm.in");
ofstream cout("ssm.out");

int v[5003];
int main()
{
    int n;
    cin>>n;
    for(int i=1;i<=n;i++){
        cin>>v[i];
    }
    int lf,rg,maxis=-2000000000,sum=-1,st;
    for(int i=1;i<=n;i++){
        if(sum<0){
            sum=0;
            st=i;
        }
        sum+=v[i];
        if(sum>maxis){
            maxis=sum;
            lf=st;
            rg=i;
        }
    }
    cout<<maxis<<" "<<lf<<" "<<rg;
    return 0;
}

//logica :
// facem suma constant si dc <0 -> e negativa aka nu e buna
// asa ca resetam suma si st=i
// daca sm> maxis(suma max) -> dam update