#ATagc013f. [AGC013F] Two Faced Cards
[AGC013F] Two Faced Cards
题目描述
有 张卡片。这些卡片的两面是可区分的。第 张卡片的正面印有一个整数 ,背面印有另一个整数 。我们将这些卡片的组合称为 。还有 张另一种卡片。第 张卡片的正面印有一个整数 ,背面没有任何印刷。我们将这组卡片称为 。
你将进行 轮游戏。每一轮都是独立进行的。在第 轮中,你会得到一张新卡片。这张卡片的两面是可区分的。它的正面印有一个整数 ,背面印有另一个整数 。通过这张卡片加入到 中,创建一个新的卡片组合 。
然后,你需要形成 对卡片。每对卡片由一张来自 的卡片和一张来自 的卡片组成。每张卡片必须恰好属于一对。此外,对于来自 的每张卡片,你需要指定使用哪一面。对于每对卡片,必须满足以下条件:
- 来自 的卡片上使用面印刷的整数 来自 的卡片上印刷的整数
如果无法知道如何组合对卡片以及使用哪一面都无法满足此条件,则该轮的得分为 。否则,该轮的得分为来自 的卡片正面被使用的数量。
找出每轮的最大可能得分。
输入格式
输入通过标准输入以以下格式给出:
输出格式
对于每一轮,打印最大可能得分,每个得分占一行。
样例 1
输入
3
4 1
5 3
3 1
1 2 3 4
3
5 4
4 3
2 3
输出
0
1
2
样例 2
输入
5
7 1
9 7
13 13
11 8
12 9
16 7 8 6 9 11
7
6 11
7 10
9 3
12 9
18 16
8 9
10 15
输出
4
3
3
1
-1
3
2
样例 3
输入
9
89 67
37 14
6 1
42 25
61 22
23 1
63 60
93 62
14 2
67 96 26 17 1 62 56 92 13 38
11
93 97
17 93
61 57
88 62
98 29
49 1
5 1
1 77
34 1
63 27
22 66
输出
7
9
8
7
7
9
9
10
9
7
9
说明/提示
- 所有输入值均为整数。