Cod sursa(job #863780)

Utilizator wallyMocanu Valentin wally Data 24 ianuarie 2013 03:35:48
Problema Subsir crescator maximal Scor 20
Compilator cpp Status done
Runda Arhiva educationala Marime 0.71 kb
#include<fstream>
using namespace std;

int main ()
{
	long n,i,k=1, max=1, first, last, pr, ul = 0;
	long long a[100000];
	ifstream f ("scmax.in");
	ofstream g ("scmax.out");
	f>>n;
	f>>a[0];
	for (i=1;i<n;i++)
	{
		f>>a[i];
		if (a[i]==a[i-1])
			continue;
		
		if (a[i]>a[i-1])
		{
			k++;
			if (k==2)
			first = i-1;	
		}
		if (a[i]<a[i-1])
		{
			last = i-1;
			if (max<k)
			{
				max=k;
				pr=first;
				ul=last;
			}
			k=1;
		}
			
	}
		if (max<k)
			{
				max=k;
				pr=first;
				if (ul==0)
					ul=n-1;
			}
	g<<max<<"\n";
	g<<a[pr]<<" ";
	for (i=pr+1;i<=ul;i++)
		if (a[i]==a[i-1])
			continue;
		else
			g<<a[i]<<" ";
	
	f.close();
	g.close();
	return 0;
}