Cod sursa(job #470539)

Utilizator DEYDEY2Tudorica Andrei DEYDEY2 Data 14 iulie 2010 15:08:09
Problema Secventa 2 Scor 100
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.55 kb


#include<fstream>
using namespace std;

int n,k,i,j,st=1,dr=1,maxim,s,x[6000001],sto=0;

int main()
{
	ifstream f("secv2.in");ofstream g("secv2.out");
	f>>n>>k>>x[1];
	maxim=x[1];
	sto=x[1];
	for(i=2;i<=n;i++){
	f>>x[i];
	sto+=x[i];
	}
	if(n!=k)
	{
		i=st=dr=1;
		s=maxim=0;
		for(j=1;j<=n;j++)
		{
			s=s+x[j];
			if(s>maxim && j-i>=n-(n-k)){maxim=s;st=i;dr=j;}
			else if(s<0)
				 {
					if(maxim<0){maxim=0;st=dr=j;}
					i=j+1;s=0;
				 }	
		}
	}
	if(n==k) g<<1<<' '<<n<<' '<<sto;
	else  g<<st<<' '<<dr<<' '<<maxim;
	f.close();g.close();
	return 0;
}