Cod sursa(job #659925)

Utilizator antonioteoZait Teodor Antonio antonioteo Data 11 ianuarie 2012 11:30:12
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.4 kb
#include <fstream>
using namespace std;
ifstream f("ssm.in"); ofstream g("ssm.out");
int n,i,s1,s2,cit,sol,p1,p2,pm;
int mn=((1 << 31)-1);
int main(){
	sol=mn*(-1);
	//7
    //5 -6 3 4 -2 3 -3
	f>>n;
	for(i=1;i<=n;++i){
		f >> cit;
		s1 += cit;
		if(mn>s2){
			mn=s2;
			pm=i-1;
		}
		if(sol<s1-mn && i>1){
			p1=pm;
			p2=i;
			sol=s1-mn;
		}
		s2+=cit;
	}
	g<<sol<<' '<<p1+1<<' '<<p2<<'\n';
	return 0;
}