题目背景
$\color{black}{\text{Z}}\color{red}{\text{houchuan}}$ 痴痴的盼望着奇迹的出现。
但却没有,我已觉悟。
世界是冰冷的,所以我必须变强。
这是我的心态。我想化作一缕光芒。
刺破那黑夜与虚假,勇者站立,只坚信那羁绊所给予的力量。
带着一成不变的强大的勇气,怀着那真实而又坚毅的心。
当面对两难的抉择时,不妨丢一枚硬币吧。
并非是要靠那二分之一的机运来帮你做出抉择!
而是因为当硬币被抛上空中,开始旋转的那一瞬间你会突然明白,自己想要的!
掸去了灰尘,搭上了磁带,您开始回顾老番,突然,$\lceil$铊$\rfloor$ 进来了。
你开始做一道计算几何题。
题目描述
$\lceil$御坂美琴$\rfloor$ 再一次的射出了手中的硬币,但显然,又会有许多重要的建筑物被摧毁。
你想要挽救这一局面,你考虑将一些建筑物进行空间转移。
具体来说,这里有 $𝑛$ 个建筑物,你知道所有建筑物的位置,以及笼罩范围。
每一个建筑物的笼罩范围都可以看作一个圆,所以你也知道这些圆的半径。
由于学院都市内的建筑物全部都是随即建造的,所以你知道所有的数据都是随机生成的。
每一个建筑物都有一个进行空间转移的代价。
$\lceil$御坂美琴$\rfloor$ 将会射击其中的一些建筑物,同时射击建筑物的余波将会不断传播。
每一个在此个建筑物笼罩范围内的建筑物都会遭到余波的攻击并被摧毁,并且继续将该余波以上述方式进行传播。
其中,有一些建筑物为重要的,有一些建筑物为会被射击的,有一些建筑物为不重要也不会被射击的。
你想要使所有重要的建筑物不被摧毁。
当然,在实际操作前,你想要知道,你需要花费的最小的代价,以及你的转移方案。
输入格式
本题有多组测试数据,并且数据之间强制在线。
第一行一个正整数 $𝑇$,表示数据个数。
对于每组测试数据:
第一行三个正整数 $𝑛, 𝐷_1,𝐷_2,𝑥_0,𝑦_0,𝑟_0$,$n$ 表示建筑物的数量,$𝐷_1$ 表示横纵坐标值域,$𝐷_2$ 表示半径值域,$(𝑥_0,𝑦_0,𝑟_0)$ 表示单位建筑物,你需要由此来生成所有其他的建筑物。其中 $D_1,D_2$ 均需要异或上一个答案(初始为 $0$)。
接下来 $𝑛$ 行,每行两个数 $𝑤_𝑖,𝑐𝑖$,表示转移的代价和状态。
$𝑐𝑖 = 0$ 表示不重要也不会被射击的,$𝑐𝑖 = 1$ 表示重要的,$𝑐𝑖 = 2$ 表示会被射击的。
请注意你需要根据单位建筑物来生成所有的建筑物。
/old/maker.cpp 为参考数据生成方式。
调用 $𝑔𝑜_𝑥𝑦𝑟(𝑥_{𝑖−1}, 𝑦_{𝑖−1}, 𝑟_{𝑖−1})$,能将这三个数变成 $𝑥_𝑖,𝑦_𝑖,𝑟_𝑖$。
输出格式
对于每组测试数据,输出两行:
第一行两个数 $𝑎𝑛𝑠,𝑘$,表示最小的代价和转移的建筑物个数;
第二行 $𝑘$ 个数,表示转移的建筑物。
注意,设测试点总分为 $P$,如果答案正确但方案错误,你依旧可以得到 $\dfrac P2$ 的分数;在此基础上,如果方案正确,你可以得到剩下的分数,如果你只想得到 $\dfrac P2$ 的分数,也请保证答案合法(让 $𝑘 = 0$),如果输出不合法,你可能得到任意的评测结果。
注意,由于配一半的分过于困难,所以没有一半的分。
样例
3
1 1 1 1 1 1
1 1
1 2 2 2 2 2
2 2
1 3 3 3 3 3
3 3
0 0
0 0
0 0
提示
子任务及特殊性质如下:
子任务编号$~~~~~~~$ | $n\le~~~~~~~$ | $\sum n\le~~~~~~~$ | $T\le~~~~~~~$ | $D_1\le~~~~~~~$ | $w_i\le~~~~~~~$ | 子任务依赖$~~~~~~~$ | 分值 |
---|---|---|---|---|---|---|---|
$1$ | $12$ | $100$ | $10$ | $100$ | $100$ | $无$ | $4$ |
$2$ | $22$ | $22$ | $1$ | $100$ | $100$ | $无$ | $6$ |
$3$ | $300$ | $1000$ | $10$ | $1000$ | $10^5$ | $1,2$ | $10$ |
$4$ | $1000$ | $2\times 10^4$ | $20$ | $1$ | $2$ | $无$ | $6$ |
$5$ | $2000$ | $6\times 10^4$ | $30$ | $2$ | $10$ | $4$ | $6$ |
$6$ | $2000$ | $6\times 10^4$ | $30$ | $100$ | $100$ | $1,2,5$ | $10$ |
$7$ | $5000$ | $10^5$ | $100$ | $10^6$ | $1000$ | $6$ | $10$ |
$8$ | $10^4$ | $10^5$ | $100$ | $10^6$ | $10^6$ | $3,7$ | $12$ |
$9$ | $2\times 10^4$ | $2\times 10^4$ | $1$ | $1000$ | $10^6$ | $2$ | $16$ |
$10$ | $2\times 10^4$ | $10^5$ | $500$ | $10^6$ | $10^9$ | $8,9$ | $20$ |