题解 | #Redraiment的走法#
Redraiment的走法
https://www.nowcoder.com/practice/24e6243b9f0446b081b1d6d32f2aa3aa
//dp解法,dp[i]的含义是到第i个点的步数的最大值
#include <iostream>
#include <vector>#include <algorithm>
using namespace std;
int main(){
int n;
cin >> n;
vector<int> nums(n,0);
for(int i = 0;i<n;++i){
cin >> nums[i];
}
vector<int> dp(n,0);
dp[0] = 0;
int maxres = 0;
for(int i = 1;i<n;++i){
for(int j = 0;j<i;++j){
dp[i] = nums[i]>nums[j]?max(dp[i],dp[j]+1):dp[i];
maxres = max(maxres,dp[i]);
}
}
cout << maxres+1 << endl;
return 0;
}