| NOIP 2022 |
|---|
| Finished |
小 E 喜欢上了一款叫做《喵了个喵》的游戏。这个游戏有一个牌堆和 n 个可以从栈底删除元素的栈,任务是要通过游戏规则将所有的卡牌消去。开始时牌堆中有 m 张卡牌,从上到下的图案分别是 a1, a2, ..., am。所有的卡牌一共有 k 种图案,从 1 到 k 编号。牌堆中每一种图案的卡牌都有偶数张。开始时所有的栈都是空的。这个游戏有两种操作:
这个游戏一共有 T 关,小 E 一直无法通关。请你帮小 E 设计一下游戏方案,即对于游戏的每一关,给出相应的操作序列使得小 E 可以把所有的卡牌消去。
从文件 'meow.in' 读入。
第一行包含一个正整数 T,表示数据组数。
接下来一共 T 组数据,在每组数据中:
第一行包含三个正整数 n, m, k,分别表示栈的个数、卡牌的个数、卡牌上图案的种类。
第二行包含 m 个正整数,分别表示 a1, a2, ..., am,分别从上到下表示牌堆中卡牌的图案。
输入数据保证有解。
输出至文件 'meow.out'。
对于每一组数据,输出若干行。
其中第一行包含一个正整数 op,表示操作的次数。你需要保证 m ≤ op ≤ 2 × m。
接下来 op 行,每行包含两个或三个正整数,整数之间用一个空格隔开。
若为两个整数 '1 s',则进行一次第一个操作并选择栈 s。
若为三个整数 '2 s1 s2',则进行一次第二个操作并选择栈 s1 和 s2。
你需要保证 1 ≤ s, s1, s2 ≤ n,且 s1 ≠ s2。
1 2 4 2 1 2 1 2
5 1 2 1 2 1 1 2 1 2 1 2
设 S 为所有 T 组数据中 m 的总和。
对于每一组数据,若在按顺序进行所有操作后,牌堆为空且所有的栈均为空,则认为你的答案正确。
你的输出不需要与样例输出一致,输出任意一个合法解即可得分。
| Name |
|---|


