N. 材料交易

内存限制:512 MiB 时间限制:2000 ms 标准输入输出
题目类型:传统 评测方式:Special Judge

题目描述

图文或许无关

GPLT选拔赛的题目又复刻了!

czq是hyf(Happy Yummy Factory)工厂的仓库管理员,最近仓库中有 件材料,这些材料的代号都是一些正整数,其中第 件材料的代号为 。巧合的是,hyf工厂目前恰好需要使用 件材料用于生产,其所需第 件材料的代号为 。对于仓库而言,材料的顺序并不重要,也就是说 都是无序可重复集合

我们说:两个无序可重复集合 ,当且仅当(视为有序序列时)存在 的一个排列等于

czq发现仓库里的 件材料可能并不符合生产需求,但是他认识一个慈善家lnc。lnc目前有 种交易( 可能为 )可以与czq进行,每种交易可以在任意时候进行任意次。对于第 种交易,czq可以在仓库中选择任意 件材料给lnc,然后lnc提供 件特定的材料

更正式地,对于第 种操作,czq在 中选择一个大小为 的子集合 并移除,然后在 中加入

由于可以榨干lnc,czq想知道有没有一种交易方案,在经过了最多 次交易后,可以满足hyf工厂的需求。更正式地,对 进行最多 次上述操作使

题目可能有多种答案,你只需要输出符合条件的一种答案即可。

输入格式

第一行一个正整数 ,代表仓库中的材料数量;

第二行 个正整数,用空格隔开,代表仓库初始的材料;

第三行 个正整数,用空格隔开,代表工厂需要的材料;

第四行一个整数 ,代表交易类型的数量;

接下来 行,第 行开头一个正整数 ,然后紧接着 个正整数,用空格隔开,代表可以获得的材料。

输出格式

题目可能有多种答案,你只需要输出符合条件的一种答案即可。如果无论如何都无法满足工厂的要求,直接在第一行输出 -1

第一行一个整数 ,代表总共进行的交易次数。 代表在不需要进行任何交易的情况下,已经满足情况,此时只需要输出 0

接下来输出 行:

每行开头一个正整数 ,代表选择的交易类型,然后输入 个正整数 ,用空格隔开,表示 中被交换的集合。

样例

样例输入1

9
1 2 1 1 1 3 3 2 2
1 2 3 1 2 3 1 2 3
1
3 3 3 2

样例输出1

1
1 1 2 3

样例输入2

4
1 1 1 1
2 2 2 2
2
2 1 2
3 1 1 1

样例输出2

-1

数据范围与提示

样例说明

对于样例1,进行一次“操作 ”将子集 替换为 后, 的个数都恰好为 个,此时

对于样例2,很显然,无论进行“操作1”还是“操作2”, 中始终都存在材料 ,因此不存在一种交易方法可以满足要求。

显然,你随机输出 0-1 也能拿到一些分数。

数据范围

对于的数据,满足

对于的数据,满足