Cod sursa(job #3203724)

Utilizator bajuuuuBajenaru Mihai Catalin Ionut bajuuuu Data 14 februarie 2024 12:21:44
Problema Subsecventa de suma maxima Scor 65
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.9 kb
#include <iostream>
#include <fstream>
#include <algorithm>
#include <cstring>
#include <map>
#include <iomanip>
#include <climits>
using namespace std;
ifstream in("ssm.in");
ofstream out("ssm.out");
int v[6000005];
int sumapart[6000005];
int main()
{
    int n;
    in >> n;
    int minimum = INT_MAX;
    for(int i =1; i<= n ; i++){
        in >> v[i];
        v[i] = v[i]+v[i-1];
    }
    int stang = 1;
    int dr = 1;
    int indiceminim = 1;
    int maximum = INT_MIN;
    for(int i =1; i<= n ; i++){
            int calculmin = v[i]-minimum;
       if ( v[i] < minimum){
        minimum = v[i];
        indiceminim = i+1;
       }
       if ( calculmin > maximum){
        maximum = calculmin;
        stang = indiceminim;
        dr = i;
       }
    }
    if ( stang > dr) out << maximum << ' ' << dr << ' ' << dr;
    else out << maximum << ' ' << stang << ' ' << dr;

}