Cod sursa(job #1768694)

Utilizator mateilmatei lascu mateil Data 1 octombrie 2016 12:39:37
Problema Subsecventa de suma maxima Scor 40
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <fstream>

using namespace std;
int s[6000000];
int main()
{
    ifstream f("ssm.in");
    ofstream g("ssm.out");
    int n, i , a , b  , j;
    int max , x;
    f>>n;
    f>>x;
    s[0] = x;
    a = b = 0;
    max = s[0];
    for(i = 1; i < n; i++){
      f>>x;
      s[i] = s[i - 1] + x;
      if(s[i] > max){
        max = s[i];
        a = 0;
        b = i + 1;
      }
      for(j = 0; j < i; j++){
        if(s[i] - s[j] > max){
          max = s[i] - s[j];
          a = j + 2;
          b = i + 1;
        }
      }
    }
    g<<max<<' '<<a<<' '<<b;
    return 0;
}