#P17431. PM12416_CandyOnDisk 圆盘上的糖果

PM12416_CandyOnDisk 圆盘上的糖果

题目描述

平面上有 nn 个圆盘,第 ii 个圆盘的圆心为 (xi,yi)(x_i,y_i),半径为 rir_i。圆盘之间可以相交或包含。

一颗糖果初始位于点 (sx,sy)(s_x,s_y),目标是把它移动到 (tx,ty)(t_x,t_y)。每一步你可以选择一个当前包含糖果的圆盘,并将该圆盘绕自身圆心旋转任意角度,糖果会随圆盘一起转动。其他圆盘在这次旋转中不会产生影响。糖果恰好位于圆盘边界时,也认为糖果在该圆盘内。

判断是否存在一系列操作,使糖果最终到达目标点。

输入格式

第一行输入五个整数 n,sx,sy,tx,tyn,s_x,s_y,t_x,t_y

接下来 nn 行,每行输入三个整数 xi,yi,rix_i,y_i,r_i,表示一个圆盘。

输出格式

如果能够到达目标点,输出 YES;否则输出 NO

数据范围

1n501\le n\le 50109xi,yi,sx,sy,tx,ty109-10^9\le x_i,y_i,s_x,s_y,t_x,t_y\le 10^91ri1091\le r_i\le 10^9

原题保证答案具有足够的几何稳定性:将所有圆盘半径统一增加或减少 10310^{-3},答案均不会改变。

样例 1

2 -1 -2 6 1
0 0 3
4 0 3
YES

样例 2

1 0 0 571 571
0 0 1
NO