「洛谷 P8858」折线 - 贪心 + 树状数组 + 二分
题意描述
平面直角坐标系的第一象限内有一块左下角为 \((0,0)\) 右上角为 \((10^{100},10^{100})\) 的矩形区域,区域内有正偶数个整点,试求出这样一条从 \((0,0)\) 出发,到 \((10^{100},10^{100})\) 的在区域内部的折线:
- 折线的每一部分都平行于 \(x\) 轴或 \(y\) 轴。
- 折线不能经过给定的整点。
- 折线将整块区域分成包含给定整点个数相等的两块。
- 折线拥有尽可能少的折点。
可以证明一定存在一条满足限制的折线,你只需要输出满足限制的折线的折点数即可。
注意折点的坐标可以不是整数。
每组测试点有 \(T\) 组数据,对于所有测试点,\(1 \leq T \leq 10^4\),\(1 \leq \sum n \leq 5 \times 10^5\),\(1 \leq n \leq 10^5\),\(1 \leq x_i,y_i \leq n\),保证 \(n\) 为正偶数,每组数据中不存在两个坐标相同的整点。