Cod sursa(job #1866260)

Utilizator Ioana_AndreeaCristescu Ioana Ioana_Andreea Data 2 februarie 2017 19:55:15
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.63 kb
#include <fstream>
using namespace std;
ifstream fin("ssm.in");
ofstream fout("ssm.out");
const int NMax = 6000005;
int X[NMax];
int N,A,B,Max = -2000000000;
int main()
{
    int S = 0,Begin = 1;
    fin >> N;
    for(int i = 1; i <= N; ++i)
      fin >> X[i];
    for(int i = 1; i <= N; ++i)
      {
       if(S + X[i] >= X[i])
        {
          S = S + X[i];
        }
      else
        {
          S = X[i];
          Begin = i;
        }
      if(S > Max)
        {
          Max = S;
          A = Begin;
          B = i;
        }

      }
    fout << Max << " " << A << " " << B << "\n";
    return 0;
}