解题思路:
注意事项:
参考代码:
#include<iostream> #include<algorithm> #include<vector> using namespace std; const int N =1010; int d[N],num; int a[N]; int main(void) { int n; cin>>n; for(int i=1;i<=n;i++) cin>>a[i]; d[++num]=a[1]; for(int i=2;i<=n;i++) { if(a[i]>=d[num]) d[++num]=a[i]; else { int p=upper_bound(d+1,d+num+1,a[i])-d; d[p]=a[i]; } } cout<<num; return 0; }
0.0分
0 人评分
大神老白 (C语言代码)浏览:612 |
矩阵乘法 (C++代码)浏览:1463 |
【亲和数】 (C语言代码)浏览:495 |
C语言程序设计教程(第三版)课后习题5.7 (Java代码)浏览:889 |
C语言程序设计教程(第三版)课后习题8.8 (C语言代码)浏览:1435 |
A+B for Input-Output Practice (VII) (C语言代码)浏览:528 |
1118(求助_已解决)浏览:329 |
蛇行矩阵 (C语言代码)浏览:508 |
字符串比较 (C语言代码)浏览:693 |
整除问题 (C语言代码)浏览:527 |