A11848 | Billiard
时间限制1s
内存限制256MB
通过 / 提交0/0
题目描述
Consider a [billiard table](https://en.wikipedia.org/wiki/Billiard_table) of rectangular size $n \times m$ with four pockets. Let's introduce a coordinate system with the origin at the lower left corner (see the picture).
There is one ball at the point $(x, y)$ currently. Max comes to the table and strikes the ball. The ball starts moving along a line that is parallel to one of the axes or that makes a $45^{\circ}$ angle with them. We will assume that:
1. the angles between the directions of the ball before and after a collision with a side are equal,
2. the ball moves indefinitely long, it only stops when it falls into a pocket,
3. the ball can be considered as a point, it falls into a pocket if and only if its coordinates coincide with one of the pockets,
4. initially the ball is not in a pocket.
Note that the ball can move along some side, in this case the ball will just fall into the pocket at the end of the side.
Your task is to determine whether the ball will fall into a pocket eventually, and if yes, which of the four pockets it will be.
There is one ball at the point $(x, y)$ currently. Max comes to the table and strikes the ball. The ball starts moving along a line that is parallel to one of the axes or that makes a $45^{\circ}$ angle with them. We will assume that:
1. the angles between the directions of the ball before and after a collision with a side are equal,
2. the ball moves indefinitely long, it only stops when it falls into a pocket,
3. the ball can be considered as a point, it falls into a pocket if and only if its coordinates coincide with one of the pockets,
4. initially the ball is not in a pocket.
Note that the ball can move along some side, in this case the ball will just fall into the pocket at the end of the side.
Your task is to determine whether the ball will fall into a pocket eventually, and if yes, which of the four pockets it will be.
输入格式
The only line contains $6$ integers $n$ , $m$ , $x$ , $y$ , $v_x$ , $v_y$ ( $1 \leq n, m \leq 10^9$ , $0 \leq x \leq n$ ; $0 \leq y \leq m$ ; $-1 \leq v_x, v_y \leq 1$ ; $(v_x, v_y) \neq (0, 0)$ ) — the width of the table, the length of the table, the $x$ -coordinate of the initial position of the ball, the $y$ -coordinate of the initial position of the ball, the $x$ -component of its initial speed and the $y$ -component of its initial speed, respectively. It is guaranteed that the ball is not initially in a pocket.
输出格式
Print the coordinates of the pocket the ball will fall into, or $-1$ if the ball will move indefinitely.
输入输出样例
输入 #1
4 3 2 2 -1 1
输出 #1
0 0
输入 #2
4 4 2 0 1 1
输出 #2
-1
输入 #3
10 10 10 1 -1 0
输出 #3
-1
The first sample:
The second sample:
In the third sample the ball will never change its $y$ coordinate, so the ball will never fall into a pocket.
The second sample:
In the third sample the ball will never change its $y$ coordinate, so the ball will never fall into a pocket.
C++ 编辑器
输入
输出
可保存默认模板;新题优先使用已保存模板。
当前快捷键仅展示,暂不支持修改。
- 撤销
Ctrl / ⌘ + Z - 重做
Ctrl / ⌘ + Y - 查找
Ctrl / ⌘ + F - 全选
Ctrl / ⌘ + A - 复制
Ctrl / ⌘ + C - 剪切
Ctrl / ⌘ + X - 粘贴
Ctrl / ⌘ + V - 自动排版
工具栏排版按钮 - 草稿保存
编辑时自动保存到本机
历史
提交记录
状态说明时间源码
AI
作答助手
你好,我是作答助手。可以问思路、复杂度、样例含义或代码报错原因;不会直接给出完整 AC 代码。
确定要清空代码吗?
提交通过
评测结果:Accepted