Cod sursa(job #2288411)

Utilizator stewie368Stefan stewie368 Data 23 noiembrie 2018 12:49:08
Problema Subsecventa de suma maxima Scor 5
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.51 kb
#include<bits/stdc++.h>
using namespace std;
int n,i;
int a[6000005],s[6000005];

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

int secventa(int n)
{
	int  max1 = 0,suma=0,v1,v2;
	for(int i=1;i<=n;i++)
	{
		if(suma<0) {
		    suma=0;
		}
		suma+=a[i];
		if(suma > max1) max1=suma, v2 = i;
		s[i]=suma;
	}
	for(int i=v2;i>=1;i--)
	{
		if(s[i]<0) v1=i+1;
	}
	fout<<max1<<' '<<v1<<' '<<v2<<' ';
}

int main()
{
	fin>>n;
	for(int i=1;i<=n;i++)
	   fin>>a[i];
	secventa(n); 
	return 0;  
}