SP26746 SERGEARS - Gears
题目描述
在平面上安装了一组齿轮。你将获得每个齿轮的中心坐标和半径,这些数据都是整数。你需要确定当转动一个给定的源齿轮时,目标齿轮会有什么反应。可能的结果有以下几种:
- 源齿轮无法转动,因为这样会导致某些齿轮在两个方向同时转动。
- 源齿轮可以转动,但它与目标齿轮之间没有连接。
- 源齿轮能以某种比例带动目标齿轮一起转动。
如果源齿轮不能转动,即便它与目标齿轮没有连接,也需将这一结果输出。
输入格式
每组输入表示一个测试用例。注意,程序可能会多次运行于不同的输入集。第一行输入一个整数 $n$(1 ≤ n ≤ 100),表示齿轮的数量。接下来会有 $n$ 行,每行包含三个整数 $x$、$y$ 和 $r$(-10,000 ≤ $x, y$ ≤ 10,000,1 ≤ $r$ ≤ 10,000),分别表示齿轮的轴心位置和半径。假定齿轮的齿设计得当,已包含在半径中,因此只有当两个齿轮相切时才会相互啮合。齿轮间不会重叠。
输出格式
根据以下情况输出一行文字结果:
- 输出 `-1` 如果源齿轮无法转动。
- 输出 `0` 如果源齿轮可以转动但与目标齿轮不连通。
- 如果源齿轮能够带动目标齿轮转动,则输出两个用空格分隔的整数 `a b`,表示源齿轮的转动次数与目标齿轮转动次数的最简比 $a : b$。注意:
- $a$ 始终为正数。
- 如果目标齿轮与源齿轮转动方向相同,$b$ 为正。
- 如果目标齿轮与源齿轮方向相反,则 $b$ 为负。
## 数据范围
- 齿轮数量 $1 \leq n \leq 100$
- 坐标范围 $-10,000 \leq x, y \leq 10,000$
- 半径 $1 \leq r \leq 10,000$
**本翻译由 AI 自动生成**