Cod sursa(job #2937991)

Utilizator NiffSniffCojocaru Calin Marcu NiffSniff Data 11 noiembrie 2022 15:19:06
Problema Subsir crescator maximal Scor 20
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.73 kb
#include <fstream>
#include <vector>
using namespace std;
string file = "scmax";
ifstream cin(file + ".in");
ofstream cout(file + ".out");
vector <int> v[100001];
int n, k;
int main()
{
	int x;
	cin >> n >> x;
	v[k].push_back(x);
	k++;
	n--;
	while (n)
	{
		bool ok = 1;
		cin >> x;
		for (int i = 0; i < k; i++)
		{
			if (v[i].back() < x)
			{
				v[i].push_back(x);
				ok = 0;
			}
		}
		if (ok)
		{
			v[k++].push_back(x);
		}
		n--;
	}
	unsigned int maxim = 0, maximi = 0;
	for (int i = 0; i < k; i++)
	{
		if (maxim < v[i].size())
		{
			maxim = v[i].size();
			maximi = i;
		}
	}
	cout << v[maximi].size() << '\n';
	for (int i = 0; i < v[maximi].size(); i++)
	{
		cout << v[maximi][i] << ' ';
	}
}