Cod sursa(job #320371)

Utilizator stanesealexStanese Alex stanesealex Data 4 iunie 2009 16:11:30
Problema Subsecventa de suma maxima Scor 100
Compilator cpp Status done
Runda Arhiva educationala Marime 0.58 kb
#include<fstream>

using namespace std;

long int maxim(int a,int b)
{
	if (a>b)
		return a;
	return b;
}
int main()
{
	int n,i,maxi,max;
	int poz1,poz2,x,pozs,x1;
	ifstream fin("ssm.in");
	ofstream fout("ssm.out");
	fin>>n;
	fin>>x;
	poz1=poz2=1;
	pozs=1;
	max=x;
	maxi=x;
	x1=1;
	for (i=2;i<=n;i++)
	{
		fin>>x;
		maxi=maxim(x,maxi+x);
		if (maxi==x&&x1!=0)
			pozs=i;
		if (maxi>max)
		{
			max=maxi;
			poz1=pozs;
			poz2=i;
		}
	x1=x;
	}
	fout<<max<<" "<<poz1<<" "<<poz2;
	fin.close();
	fout.close();
	/*fclose(f);
	fclose(g);*/
	return 0;
}