Cod sursa(job #356192)

Utilizator alexch16Chelariu Alexandru alexch16 Data 13 octombrie 2009 19:38:54
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.64 kb
#include <fstream.h>
#include <iostream.h>

#define MAX 100

int main(){
  int indI, incmax, sfmax, smax=0;

  indI = 1;

  int A[MAX], n, i;

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

  for (i=1; i<=n; i++)
     fin>>A[i];

  int sum = 0;

  for (i=1; i<=n; i++){
    if (A[i] >= 0){
      sum += A[i];
      if (sum>smax)
         {
         smax=sum;
         incmax=indI; sfmax=i;
         }
    }
    else
    if (sum+A[i] >= 0){
       sum += A[i];
     }
     else
     { sum=0;
       indI = i+1;
     }
  }

  fout<<smax<<endl;

  fout.close();
  fin.close();
  return 0;
}