简单的最长上升子序列 数据量比较小,不用优化,一天没做题了,刷到简单的提提神,水啊啊啊
#include <iostream>
#include <cstdlib>
#include <cstring>
using namespace std;
const int Max = 10003;
int main(void)
{
int T,n;
int i,j;
int a[Max],f[Max];
cin >> T;
while(T--)
{
cin >> n;
for(i = 1;i <= n;++i)
cin >> a[i];
f[1] = 1;
for(i = 1;i <= n;++i)
{
int temp = 0;
for(j = 1;j < i;++j)
{
if(a[i] > a[j] && temp < f[j])
temp = f[j];
}
f[i] = temp + 1;
}
int m = 0;
for(i = 1;i <= n;++i)
if(m < f[i]) m = f[i];
cout << m << endl;
if(T) cout << endl;
}
system("pause");
return 0;
}