Cod sursa(job #3142392)

Utilizator buntaruButnaru Petre buntaru Data 21 iulie 2023 08:58:11
Problema Subsecventa de suma maxima Scor 85
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.58 kb
#include <iostream>
#include <fstream>
using namespace std;

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

int n , x , s[6000005] , mini;

int main()
{
    int dr;
    fin>>n;
    for(int i=1 ; i<=n ; i++){
        fin>>x;
        s[i]=s[i-1]+x;
        if(i == 1){
            mini=i;
        }
        else if((i!=1)&&(s[i] < s[mini])&&(i!=n)){
            mini=i;
        }
    }
    dr=mini+1;
    for(int i=mini+2 ; i<=n ; i++)
        if((s[i]-s[mini]) > (s[dr]-s[mini])){
            dr=i;
        }
    fout<<s[dr]-s[mini]<<' ';
    mini++;
    fout<<mini<<' '<<dr;
    return 0;
}