题目描述
小明是蓝桥王国的骑士,他喜欢不断突破自我。
这天蓝桥国王给他安排了 N 个对手,他们的战力值分别为 a_1,a_2,…,a_n,且按顺序阻挡在小明的前方。对于这些对手小明可以选择挑战,也可以选择避战。
身为高傲的骑士,小明从不走回头路,且只愿意挑战战力值越来越高的对手。
请你算算小明最多会挑战多少名对手。
输入描述
输入第一行包含一个整数 N,表示对手的个数。
第二行包含 N 个整数 a_1,a_2,…,a_n分别表示对手的战力值。
输出描述
输出仅一行包含一个整数表示答案。
样例输入
6
1 4 2 2 5 6
样例输出
4
状态方程:dp[ i ] 以第i个数结尾的最长子序列长度
dp改变的要求最长子序列 且 战力值大于之前
#include<bits/stdc++.h>
using namespace std;
const int N = 10001;
int a[N],dp