BZOJ 5427: 最长上升子序列&&4282: 慎二的随机数列(DP)

Description

现在给你一个长度为n的整数序列,其中有一些数已经模糊不清了,现在请你任意确定这些整数的值,
使得最长上升子序列最长。(为何最长呢?因为hxy向来对自己的rp很有信心)

Input

第一行一个正整数n
接下来n行第i行格式如下
K x:表示第i个数可以辨认且这个数为x
N:表示第i个数一个已经辨认不清了
n<=100000,|x|<=10^9

Output

一个正整数代表最长上升子序列最长是多少

Sample Input

4
K 1
N
K 2
K 3

Sample Output

3
【样例说明】
当序列为1 1 2 3 (也可以1 2 2 3,1 0 2 3……)
时最长上升子序列最长,为3

HINT

Source

Solution

令\(f[i]\)表示当前长度为\(i\)的最长上升子序列最后一位的最小值

当该位不确定时显然总答案加一,所有\(f[i]++\)并左移一位

确定时直接二分更新即可

 

0 0 vote
Article Rating
Subscribe
提醒
guest
0 评论
Inline Feedbacks
View all comments