Cod sursa(job #668433)
Utilizator | Dumitrache Iulian DumitracheIulian | Data | 24 ianuarie 2012 21:53:59 |
---|---|---|---|
Problema | Subsecventa de suma maxima | Scor | 90 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.53 kb |
#include <iostream>
#include <fstream>
using namespace std;
const int N=6000000;
int temp,n,maxc,inceput=1,sfarsit=1,ino=1,sc[N];
int main()
{
ifstream in ("ssm.in");
ofstream out("ssm.out");
in>>n;
in>>temp;
temp=sc[1]=maxc;
for(int i=2;i<=n;i++)
{
in>>temp;
if(sc[i-1]<=0) {sc[i]=temp;ino=i;}
else sc[i]=sc[i-1]+temp;
if(sc[i]>maxc)
{maxc=sc[i];inceput=ino;sfarsit=i;}
}
out<<maxc<<" "<<inceput<<" "<<sfarsit;
return 0;
}