#P4650. [COCI2017-2018#5] Karte

[COCI2017-2018#5] Karte

题目描述

NN 张牌叠在一起,第 ii 张牌上,有一个数字 aia_i 表示它下面至少aia_i 张牌上的信息是错误的,若它下面确实有至少 aia_i 张牌的信息是错误的,那这张牌的信息就是正确的,否则这张牌的信息就是错误的。(我们认为最下面的牌的后面有 00 张错误的)

现在需要你重新调整牌的顺序,使得正好有 KK 张牌上的信息是错误的。

输入格式

第一行两个正整数 NNKK (1N5×105,0KN)( 1 ≤ N≤ 5×10^5,0 ≤ K≤ N )表示牌的张数和要求的错误信息的个数。 接下来 NN 行,每行一个数,表示对应的 aia_i (0ai5×105)(0 ≤ a_i≤ 5×10^5 )

输出格式

如果调整方案不存在,输出1-1。否则输出由顶部到底部 NN 张牌对应的 aia_i,若有多种方案,输出任意一种即可。

4 2
1 2 2 3
2 3 1 2
5 3
2 1 3 0 3
3 3 0 1 2
6 4
0 2 5 2 0 1
-1

提示

30%30\%的数据 N16N≤ 16

另有40%40\%的数据 N2000N≤ 2000

样例 2 说明:

55 张牌上写的是22,但是其后面只有 00 张错误,所以它是错误的。

44 张牌上写的是11,其后面有 11 张错误(第五张),所以它是正确的。

33 张牌上写的是00,其后面有 11 张错误(第五张),所以它是正确的。

22 张牌上写的是33,但是其后面只有 11 张错误(第五张),所以它是错误的。

11 张牌上写的是33,但是其后面只有 22 张错误(第五张,第二张),所以它是错误的。

因此总共有 33 张是错误的。