Q. *【树状数组+模拟】[HAOI2007] 上升序列(数据加强版)

    传统题 1000ms 125MiB

*【树状数组+模拟】[HAOI2007] 上升序列(数据加强版)

该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。

注意这里数据范围是 1e5!!比洛谷 1e4 大!!!

P2215 [HAOI2007] 上升序列

题目描述

对于一个给定的 S={a1,a2,a3,,an}S=\{a_1,a_2,a_3,…,a_n\} , 若有 P={ax1,ax2,ax3,,axm}P=\{a_{x_1},a_{x_2},a_{x_3},…,a_{x_m}\} , 满足 (x1<x2<<xm)(x_1<x_2<…<x_m)(ax1<ax2<<axm)(a_{x_1}<a_{x_2}<…<a_{x_m}) 。那么就称 PPSS 的一个上升序列。如果有多个 PP 满足条件,那么我们想求字典序最小的那个。

任务:

给出 SS 序列,给出若干询问。对于第 ii 个询问,求出长度为 LiL_i 的上升序列,如有多个,求出字典序最小的那个(即首先 x1x_1 最小,如果不唯一,再看 x2x_2 最小……),如果不存在长度为 LiL_i 的上升序列,则打印 Impossible

输入格式

第一行一个 NN,表示序列一共有 NN 个元素。

第二行 NN 个数,为 a1,a2,,ana_1, a_2 , \cdots , a_n

第三行一个 MM,表示询问次数。下面接 MM 行每行一个数 LL,表示要询问长度为 LL 的上升序列。

输出格式

对于每个询问,如果对应的序列存在,则输出,否则打印 Impossible

输入输出样例 #1

输入 #1

6
3 4 1 2 3 6
3
6
4
5

输出 #1

Impossible
1 2 3 6
Impossible

输入输出样例 #2

输入 #2

6
6 7 1 2 3 4
1
2

输出 #2

6 7

说明/提示

scy重制了数据如下:

int N[]={10,100,1000,5000,10000,20000,40000,50000,80000,100000};
int M[]={5,10,100,500,1000,1000,1000,1000,1000,1000};

提高8.2-8.4(树状数组)

未参加
状态
已结束
规则
XCPC
题目
25
开始于
2024-8-1 23:00
结束于
2024-8-10 3:00
持续时间
196 小时
主持人
参赛人数
16