loj#P6088. 可持久化最长不降子序列

可持久化最长不降子序列

题目描述

现给出两个操作:

  1. addadd 操作: 在序列末尾加上一个非负整数 xx

  2. backback 操作: 给出 xx ,回到第 xxaddadd 操作之后的版本 ,将第 x x add add 操作之后的版本全部删除

给出 nn,表示操作的总次数

每一次操作后,输出当前版本的最长不降子序列的长度 lenlen

输入格式

第一行一个整数 n n

之后的 n n 行,每行 2 2 个整数,表示 opt opt x x

opt opt 0 0 时 ,表示 add add 操作

opt opt 1 1 时 ,表示 back back 操作

输出格式

n n 行,表示每一次操作后的最长不降子序列的长度 len len

5
0 2
0 0
1 0
1 0
0 5
1
1
0
0
1

数据范围与提示

对于数据点编号 141-4n=1000 n = 1000

对于数据点编号 565-6n=10000,xi10000 n = 10000, x_i \le 10000

对于数据点编号 7107-10n=499998 n = 499998

对于数据点编号 101110-11n=499999 n = 499999 ,保证仅有 add add 操作;

对于数据点编号 122012-20n=500000 n = 500000

对于 100% 100\% 的数据,满足 xi10000000 x_i \le 10000000

数据保证对于每一次 back back 操作的 xi x_i ,当前版本 k k 均满足 xik x_i \le k