Cod sursa(job #1519269)

Utilizator mister_adyAdrian Catana mister_ady Data 7 noiembrie 2015 03:19:25
Problema Subsecventa de suma maxima Scor 35
Compilator cpp Status done
Runda Arhiva educationala Marime 0.55 kb
#include<iostream>
#include<fstream>
using namespace std;
int N;
int k[600006];
int main()
{
	ifstream f("ssm.in");
	ofstream g("ssm.out");
	f>>N;
	int v[600000];
	int u[600000];
	int min;
	int max;
	int S = 0, i, j, k1;
	for(i = 1 ; i <= N ; i++)
		f>>v[i];
	for(i = 2 ; i <= N ; i++)
	{ 
		min = v[1];		
		S = 0;
		for(j = 1 ; j < i ; j++)
		{
			S = S + v[j];
			if ( S < min )
				{min = S; 
				k[i] = j + 1;
				}
		}
		u[i] = S + v[i] - min; 	
	    if( u[i] > max )
		{
		max = u[i];
		k1 = i;
		}
    }
	g<<max<<" "<<k[k1]<<" "<<k1<<endl;
	return 0;
}