Bellovin -HDU5487
来源:互联网 发布:mac开发网站 编辑:程序博客网 时间:2024/06/04 17:41
Peter has a sequence a1,a2,...,an a1,a2,...,an and he define a function on the sequence -- F(a1,a2,...,an)=(f1,f2,...,fn) F(a1,a2,...,an)=(f1,f2,...,fn), where fi fi is the length of the longest increasing subsequence ending with ai ai.
Peter would like to find another sequenceb1,b2,...,bn b1,b2,...,bn in such a manner that F(a1,a2,...,an) F(a1,a2,...,an) equals to F(b1,b2,...,bn) F(b1,b2,...,bn). Among all the possible sequences consisting of only positive integers, Peter wants the lexicographically smallest one.
The sequencea1,a2,...,an a1,a2,...,an is lexicographically smaller than sequence b1,b2,...,bn b1,b2,...,bn, if there is such number i i from 1 1 to n n, that ak=bk ak=bk for 1≤k<i 1≤k<i and ai<bi ai<bi.
Peter would like to find another sequence
The sequence
The first contains an integer
311055 4 3 2 131 3 5
11 1 1 1 11 2 3这道题题意就是给出一个序列,求出以每个元素结尾的最长子序列的长度,然后按序输出就行
#include <cstdio> #include <algorithm> #define INF 0x3f3f3f3f #define maxx 100000+10using namespace std;int dp[maxx],a[maxx],t[maxx]; int main() { int n,i,j; int T;scanf("%d",&T); while(T--) { scanf("%d",&n); for(i=0;i<n;i++) { scanf("%d",&a[i]); dp[i]=INF; } for(i=0;i<n;i++) { *lower_bound(dp,dp+n,a[i])=a[i]; t[i]=lower_bound(dp,dp+n,a[i])-dp+1;//减去后腰加上1才是个数 } for(int i = 0; i < n-1; i++)printf("%d ",t[i]);printf("%d\n",t[n-1]); } return 0; }
阅读全文
0 0
- Bellovin -HDU5487
- Bellovin
- Bellovin
- Bellovin
- hdu5748 Bellovin
- HDU5748:bellovin
- 【HDU5748】Bellovin
- Bellovin||HDU5748
- HDU 5748 Bellovin [DIS]
- HDU 5748 Bellovin
- HDOJ 5748 Bellovin
- 【杭电】[5748]Bellovin
- HDU 5748 Bellovin
- HDOJ 5748 Bellovin(LIS)
- HDOJ 5748 Bellovin
- LIS hdu 5748 (Bellovin)
- HDU-5748-Bellovin【LIS】
- 【杭电oj5748】Bellovin
- Longest Ordered Subsequence 【poj-2533】【动态规划-最长上升子序列】
- DBCC
- JS随机打乱数组的方法小结
- HDU 6092 Rikka with Subset(题解解释)
- JNI调用c++函数,该函数的参数是结构体(——对象的传递)
- Bellovin -HDU5487
- Vue.js教程: 构建一个预渲染SEO友好的应用示例
- hdu6090_2017 Multi-University Training Contest
- try-catch-fianlly
- HDU
- Python:递归输出斐波那契数列
- java 正则表达式隐藏手机号中间四位
- 记录week3
- 虚拟币开发专题(山寨币现在都有什么矿池在支持)