Cod sursa(job #846494)

Utilizator test_13testing test_13 Data 2 ianuarie 2013 12:40:17
Problema Subsecventa de suma maxima Scor 95
Compilator cpp Status done
Runda Arhiva educationala Marime 0.57 kb
#include <stdio.h>
#include <algorithm>
#include <cmath>
#include <cctype>
#include <cstring>
#include <vector>
#include <deque>
using namespace std;
#define Max 500001

int main()
{
	int n,bst,p,u,p1,bst1,x;
	freopen("ssm.in","r",stdin);
	freopen("ssm.out","w",stdout);
		scanf("%d",&n);
		scanf("%d",&x);
		bst=bst1=x;
		p=p1=u=1;
		for(int i=2;i<=n;i++)
		{
			scanf("%d",&x);
			if(bst1+x>x)bst1+=x; else
			{
				bst1=x;
				p1=i;
			}
			if(bst1>bst)
			{
				bst=bst1;
				p=p1;
				u=i;
			}
		}
		printf("%d %d %d\n",bst,p,u);
	return 0;
}