8 300 207 155 300 299 170 158 65
6
#include <cstdio> #include <iostream> #include <cmath> #include <string> #include <cstring> #include <algorithm> using namespace std; int main() { int k, high[30], dp[30], len; while(~scanf("%d", &k)) { len = 1; for(int i = 0; i<k; i++) { scanf("%d", &high[i]); } for(int i = 0; i<k; i++) { dp[i] = 1; for(int j = i-1; j >= 0; j--) if(high[j] >= high[i] && dp[j]+1 >= dp[i])dp[i] = dp[j]+1; if(dp[i]>len)len = dp[i]; } printf("%d\n", len); } return 0; }
SDNU 1221.This is a water problem.
原文:https://www.cnblogs.com/RootVount/p/10372260.html