在一个晴朗的日子里,熊猫先生(Mr. Panda)和猫咪拉尔(Rar the Cat)决定去攀岩。攀岩墙上共有 $N$ 块岩石。第 $i$ 块岩石位于距离墙底高度为 $Y_i$、距离墙面中心向右 $X_i$ 个单位的位置。如果 $X_i$ 为负数,则表示它位于中心的左侧。所有岩石的位置都是互不相同的。
为了测试熊猫先生的攀岩技巧,猫咪拉尔决定向他发起挑战。挑战规则如下:
- 在这 $N$ 块岩石中,猫咪拉尔会挑选一个包含 $K$ 块岩石的集合,该集合称为 $R$。
- 为了赢得挑战,熊猫先生首先必须从集合 $R$ 中选择一对岩石 $(A, B)$。只要 $A \neq B$ 且两块岩石都在集合 $R$ 中,熊猫先生可以自由选择任意一对岩石。
- 熊猫先生将从第一块岩石($A$)出发,并尝试前往第二块岩石($B$)。在从 $A$ 到 $B$ 的途中,他可以经过其他岩石,无论这些岩石是否在集合 $R$ 中。
- 然而,每块岩石都有一个光滑度 $S_i$。当一块岩石的光滑度较高时,想要伸手够到较远的岩石而不滑落会更加困难。此外,猫咪拉尔只允许他向上攀爬。更具体地说,要从第 $i$ 块岩石移动到第 $j$ 块岩石,必须满足 $\max(|X_i - X_j|, |Y_i - Y_j|) \le \max(S_i, S_j)$ 且 $Y_i < Y_j$。
- 如果熊猫先生成功选择了一对岩石 $(A, B)$ 并能从岩石 $A$ 到达岩石 $B$,他就赢得了挑战。如果他无法做到这一点,熊猫先生就输掉了挑战。
请参考样例输入和输出以获取更多细节。
当然,熊猫先生知道存在许多岩石对,使得挑战无法完成。他希望找到最小的 $K$,使得无论猫咪拉尔选择哪组岩石,他都总能完成挑战。他需要你的帮助来找到这个值。
输入格式
你的程序必须从标准输入中读取。
输入的第一行包含一个整数 $N$。
接下来的 $N$ 行,每行包含 3 个整数。第 $(i + 1)$ 行表示第 $i$ 块岩石的 $X_i, Y_i, S_i$。
输出格式
你的程序必须向标准输出输出一行,包含一个整数,即能够确保熊猫先生总是能完成挑战的最小岩石数量。如果熊猫先生永远无法完成挑战,则输出 $-1$。
样例
输入样例 1
5 0 3 2 -1 5 1 4 4 3 -1 1 2 2 2 1
输出样例 1
3
说明 1
当 $K = 2$ 时,存在某些岩石子集使得熊猫先生无法完成挑战。例如,如果猫咪拉尔选择位于 $(-1, 1)$ 和 $(2, 2)$ 的岩石组成集合 $R$,熊猫先生将无法完成挑战。
熊猫先生无法从位于 $(2, 2)$ 的岩石移动到位于 $(-1, 1)$ 的岩石,因为他只能向上攀爬。熊猫先生也无法直接从位于 $(-1, 1)$ 的岩石移动到位于 $(2, 2)$ 的岩石,因为 $\max(|-1 - 2|, |1 - 2|) = 3 > \max(2, 1) = 2$。
另一种选择是间接地从 $(-1, 1)$ 移动到 $(2, 2)$。熊猫先生可以从位于 $(-1, 1)$ 的岩石攀爬到位于 $(0, 3)$ 的岩石,因为 $\max(|-1 - 0|, |1 - 3|) = 2 \le \max(2, 1) = 2$。然而,他无法从位于 $(0, 3)$ 的岩石移动到位于 $(2, 2)$ 的岩石,因为他必须向上攀爬。
此外,可以验证,对于任意 3 块岩石的集合,总能选择一对岩石使得熊猫先生能够完成挑战。
例如,如果猫咪拉尔选择位于 $(-1, 5), (4, 4), (-1, 1)$ 的岩石组成集合 $R$,熊猫先生可以通过选择 $(-1, 5)$ 和 $(-1, 1)$ 这对岩石来完成挑战。
为了完成挑战,他从岩石 $(-1, 1)$ 攀爬到岩石 $(0, 3)$,然后再攀爬到岩石 $(-1, 5)$。中间的岩石不需要属于 $R$。
输入样例 2
3 0 1 2000000 -1 2 2000000 1 2 2000000
输出样例 2
3
说明 2
该测试用例仅对子任务 1, 2 和 5 有效。
如果猫咪拉尔选择高度为 2 的 2 块岩石(即第 2 块和第 3 块岩石),熊猫先生无法完成挑战,因为他必须总是向上攀爬。因此,熊猫先生只有在猫咪拉尔选择所有岩石时,才能保证完成挑战。
输入样例 3
2 0 1 1 0 5 1
输出样例 3
-1
说明 3
该测试用例仅对子任务 2, 3, 4 和 5 有效。
即使猫咪拉尔选择了所有的岩石,熊猫先生也无法完成挑战,因为没有任何方法可以从一块岩石到达另一块岩石。因此,熊猫先生永远无法完成挑战。
子任务
在每个测试点上的最大运行时间为 1.0s。你的程序将在以下输入实例集上进行测试:
| 子任务 | 分值 | $N$ | 其他限制 |
|---|---|---|---|
| 1 | 15 | $1 \le N \le 20$ | 对所有 $i$,有 $S_i = 2 \times 10^6$ |
| 2 | 29 | $1 \le N \le 20$ | 无其他限制 |
| 3 | 17 | $1 \le N \le 500$ | 对所有 $i, j$,有 $X_i = 0, S_i = S_j$ |
| 4 | 19 | $1 \le N \le 500$ | 对所有 $i$,有 $S_i = 1$,且 $Y_i$ 不是 3 的倍数 |
| 5 | 20 | $1 \le N \le 500$ | 无其他限制 |
对于所有测试用例,$-10^6 \le X_i \le 10^6$,$1 \le Y_i \le 10^6$,$1 \le S_i \le 2 \times 10^6$。