哪位大佬教教本蒟蒻如何把时间复杂度压到O(nlogn)
查看原帖
哪位大佬教教本蒟蒻如何把时间复杂度压到O(nlogn)
501009
王琼老师楼主2023/8/27 14:21
#include <iostream>
#include <vector> 
#include <algorithm> 
using namespace std;

void Output(vector<int> &a)
{
	for(int i=0; i<a.size(); i++)
		cout<<a[i]<<" ";
	cout<<endl;
}

int GetLis(vector<int> &a)
{
	vector<int> len(a.size(), 1);
	for(int i=1; i<a.size(); i++)
		for(int j=0; j<i; j++)
		{
			if(a[j]<a[i])
				continue;
			if(len[j]+1>len[i])
				len[i]=len[j]+1;
		}
//	Output(len);
	vector<int>::iterator it=max_element(len.begin(), len.end());
	return *it;
}

int main()
{
//	freopen("1.txt", "r", stdin);
	int n;	cin>>n;
	vector<int> a(n);
	for(int i=0; i<n; i++)
		cin>>a[i];
	cout<<GetLis(a)<<endl;
	return 0;
} 
2023/8/27 14:21
加载中...