Universal Cup Judging System

Universal Cup

Time Limit: 2 s Memory Limit: 1024 MB Total points: 100 Difficulty: [show]
Statistics

Una 正在一条有 $n$ 棵樱桃树的路上行走,春天的落英轻轻地飘落。第 $i$ 棵樱桃树上有 $a_i$ 朵花。

Una 非常想念她最好的朋友 Kamome。她记得,在 Kamome 离开这座城市的那天,Kamome 送给了 Una 一个整数序列 $b_1, \dots, b_n$。Kamome 告诉 Una,当对所有 $i \in [1, n]$ 都有 $a_i \equiv b_i \pmod 2$ 时,樱桃树中的魔法力量将被激活,她们就能再次相遇。

Una 的愿望如此强烈,以至于她的想象变成了现实。她获得了施展魔法的力量,可以使花朵绽放。在每次挥动魔杖时,她可以选择一个连续的樱桃树子段 $[l, r]$,并将其中所有树上的花朵数量 $a_i$ 变为 $\sum_{j=l}^r a_j$(对所有 $i \in [l, r]$)。

借助魔法,Una 每天可以施展任意次数的魔法,但她当天不能对同一棵树施展两次或更多次魔法,否则这棵树会因为过多的魔法力量而枯萎。(换句话说,同一天选择的子段不能相交。)

Una 已经十年没见到 Kamome 了,她不想再等下去了。Una 想知道她们需要多少天才能相遇(即,对每个 $i \in [1, n]$ 都使 $a_i \equiv b_i \pmod 2$),以及每天应该执行什么样的魔法。注意,这可能是无法实现的,在这种情况下,你应该告诉她。 (请参考输出部分了解更多细节。)

输入格式

每个测试包含多组数据。 第一行包含一个整数 $t$ ($1 \le t \le 2.5 \times 10^4$),表示测试组数。 接下来的描述是每个测试组的输入。 每个测试组的第一行包含一个整数 $n$ ($1 \le n \le 10^3$, $\sum n^2 < 10^6$),表示樱桃树的数量。 第二行包含 $n$ 个整数 $a_1, \dots, a_n$ ($0 \le a_i \le 1$),表示每棵树当前的花朵数量。 第三行包含 $n$ 个整数 $b_1, \dots, b_n$ ($0 \le b_i \le 1$),是 Kamome 给 Una 的序列。

输出格式

对于每个测试组,如果无法让 Kamome 和 Una 相遇,则输出 -1。否则,输出一个整数 $k$,表示 Una 需要的最少天数。 在接下来的 $k$ 行中,你应该给出 Una 在第 $i$ 天应该执行的魔法指令。输出 $2c + 1$ 个整数 $c, l_{i,1}, r_{i,1}, l_{i,2}, r_{i,2}, \dots, l_{i,c}, r_{i,c}$,其中 $c$ 是第 $i$ 天要执行的魔法操作次数,而 $[l_{i,j}, r_{i,j}]$ 表示第 $j$ 个要选择的连续子段。你应该保证对于 $1 < j < c$,有 $r_{i,j} < l_{i,j+1}$,并且对于 $1 \le j < c$,有 $l_{i,j} < r_{i,j}$。 如果有多个解决方案,你可以输出任意一个。

样例

输入 1

3
5
1 0 1 0 1
0 1 0 1 0
3
1 1 0
1 1 1
10
1 0 0 1 0 1 0 0 1 0
1 0 1 0 0 1 0 1 0 0

输出 1

-1
1
1 2 3
2
2 1 4 6 9
2 1 2 6 7

说明

在第三个测试用例中,第一天结束后,序列 $a$ 为 $[1, 1, 1, 2, 0, 1, 1, 1, 2, 0]$。 第二天结束后,序列 $a$ 为 $[1, 2, 1, 2, 0, 1, 2, 1, 2, 0]$。 显然,两天后,$a_i \equiv b_i \pmod 2$。可以证明,一天内无法实现此目标。

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.