题目名称 | 601. [POJ 1442] 黑盒子 |
---|---|
输入输出 | blackbox.in/out |
难度等级 | ★★★ |
时间限制 | 1000 ms (1 s) |
内存限制 | 128 MiB |
测试数据 | 16 |
题目来源 | mouse 于2011-10-17加入 |
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:211, 提交:407, 通过率:51.84% | ||||
syzhaoss | 100 | 0.000 s | 0.00 MiB | C++ |
. | 100 | 0.005 s | 0.64 MiB | C++ |
┭┮﹏┭┮ | 100 | 0.011 s | 1.69 MiB | C++ |
AntiLeaf | 100 | 0.024 s | 0.71 MiB | C++ |
ztx | 100 | 0.028 s | 1.83 MiB | C++ |
Dissolute丶Tokgo | 100 | 0.029 s | 1.84 MiB | C++ |
wakawaka | 100 | 0.030 s | 2.60 MiB | C++ |
王司徒 | 100 | 0.031 s | 30.85 MiB | C++ |
fw | 100 | 0.032 s | 1.30 MiB | C++ |
呵呵 | 100 | 0.033 s | 0.60 MiB | C++ |
本题关联比赛 | |||
20111021 | |||
数据结构练习 |
关于 黑盒子 的近10条评论(全部评论) | ||||
---|---|---|---|---|
洛谷上一直90分。。。。。
谁知道增强的那四组数据卡了点啥?
Jekyll
2017-11-09 21:40
15楼
| ||||
上大学了居然还要再学一遍treap
这里的数据似乎有些小,我两个哨兵开了±0x7fffffff(8个f)也过了 我的题解:http://wmdcstdio.com/2017/10/27/poj-1442neerc-1996black-box/ | ||||
离散化,线段树
| ||||
stl常数大如狗,我没看出来是线段树....
| ||||
| ||||
| ||||
set A4T2
线段树 A6 平衡树 A6 | ||||
150题斩。
槿柒
2016-07-09 17:02
8楼
| ||||
终于写对splay了。
| ||||
离散化+线段树。离散化时可以把相同的数离散化为不同的值,不必特殊处理,便于之后由离散化后的值再查找一开始的值
|
我们使用黑盒子的一个简单模型。它能存放一个整数序列和一个特别的变量$i$。在初始时刻,黑盒子为空且$i$等于$0$。这个黑盒子能执行一系列的命令。有两类命令:
ADD(x)
:把元素$x$放入黑匣子;
GET
:把$i$加$1$的同时,输出黑匣子内所有整数中第$i$小的数。
下面的表是一个11个命令的例子:
编号 | 命令 | i | 黑匣子内容 | 输出 |
1 | ADD(3) | 0 | 3 | |
2 | GET | 1 | 3 | 3 |
3 | ADD(1) | 1 | 1,3 | |
4 | GET | 2 | 1,3 | 3 |
5 | ADD(-4) | 2 | -4,1,3 | |
6 | ADD(2) | 2 | -4,1,2,3 | |
7 | ADD(8) | 2 | -4,1,2,3,8 | |
8 | ADD(-1000) | 2 | -1000,-4,1,2,3,8 | |
9 | GET | 3 | -1000,-4,1,2,3,8 | 1 |
10 | GET | 4 | -1000,-4,1,2,3,8 | 2 |
11 | ADD(2) | 4 | -1000,-4,1,2,2,3,8 |
定义ADD
命令的个数为$m$个,GET
命令的个数为$n$个。我们用下面的两个整数序列描述命令序列:
(1)$a_1,a_2,\cdots,a_m$:加入黑匣子的元素序列。例如在上例中$a=\{3,1,-4,2,8,-1000,2\}$。
(2)$u_1,u_2,\cdots,u_n$:$u_i$表示第$i$个GET
命令在第$u_i$个ADD
命令之后,例如在上例中,$u=\{1,2,6,6\}$。
现在请你根据给出的序列$a$和$u$求出操作过程中输出的所有数值。
输入包括三行。
第一行包含两个整数$m,n$,表示$a$序列和 $u$ 序列的长度。
第二行包含$m$个整数,表示$a$序列的每一个元素。
第三行包含$n$个整数,表示$u$序列的每一个元素。
同行每个数之间用空格隔开。
输出操作过程中所有GET
操作输出的数值。
每个数值占一行。
7 4 3 1 -4 2 8 -1000 2 1 2 6 6
3 3 1 2
$|a_i|\leq 2\times 10^9,1\leq n\leq m\leq 30000$,对于所有的$p(1\leq p\leq n),p\leq u(p)\leq m$成立。