Cod sursa(job #2638592)

Utilizator Fiby24Chitimia Dragos Fabian Nicusor Fiby24 Data 29 iulie 2020 00:36:13
Problema Subsecventa de suma maxima Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.83 kb
#include <iostream>
#include <fstream>
using namespace std;

ifstream f("ssm.in");
ofstream g("ssm.out");

int n , v[6000003] , best[6000003];

void citire()
  {
      f>>n;
    for(int i=1;i<=n;i++)
      f>>v[i];
  }

void rezolvare()
  {
    int best_sum = v[1] , pozitie_finala , pozitie_initiala , nr = 0;
     for(int i=1;i<=n;i++)
      {
        best[i] = v[i];
          if(best[i] < best[i-1] + v[i])
            best[i] = best[i-1] + v[i];
          if(best_sum < best[i])
            {
                nr++;
              best_sum = best[i];
              pozitie_finala = i;
                if(nr == 1)
                  pozitie_initiala = i - 1;
            }
      }
    g<<best_sum<<" "<<pozitie_initiala<<" "<<pozitie_finala;
  }

int main()
  {
    citire();
    rezolvare();
    return 0;
  }