Cod sursa(job #302664)

Utilizator bacerandreiBacer Andrei bacerandrei Data 9 aprilie 2009 09:55:35
Problema Subsecventa de suma maxima Scor 0
Compilator cpp Status done
Runda Arhiva educationala Marime 0.53 kb
#include <fstream.h>
#define Max 7000006

int a[Max], max = -32000, sc, ic, sf, pc, n, lmax;


int main()
{
  ifstream f("ssm.in");
  ofstream g("ssm.out");
    f>>n;
      for(int i = 1; i <= n; i++)
	f>>a[i];
  f.close();
   max = a[1]; sc = a[1]; ic = 1; sf = 1; pc = 1;
    for(i = 2; i <= n; i++)
      {
	if(sc > 0)
	  sc += a[i];
	else
	 {
	   sc = a[i];
	   pc = i;
	 }
	if(sc > max)
	 {
	   ic = pc;
	   sf = i;
	   max = sc;
	 }
      }
   g<<max<<" "<<ic<<" "<<sf<<"\n";
  g.close();
  return 0;
}