欢迎来到起遇信息学
起遇信息学正处于上线筹建阶段,以下功能已全部开放免费体验: ✅ 完整题库浏览与代码提交评测(C / C++ / Python / Java 等) ✅ 入门到进阶的系列课程试读、作业与考试 ✅ AI 提示、AI 作业分析等智能助教功能 ✅ 赛事模拟与个人能力报告 ✅ 邮箱注册开放 ⏳ 付费课程订阅与微信/支付宝支付通道 ⏳ 手机号登录,微信扫码登录、微信公众号绑定 使用中如遇任何问题,欢迎通过页面底部 **"联系我们"** 与我们沟通。
CF1452A.Robot Program
Robot Program
There is an infinite 2-dimensional grid. The robot stands in cell and wants to reach cell . Here is a list of possible commands the robot can execute:
- move north from cell to ;
- move east from cell to ;
- move south from cell to ;
- move west from cell to ;
- stay in cell .
The robot wants to reach cell in as few commands as possible. However, he can't execute the same command two or more times in a row.
What is the minimum number of commands required to reach from ?
Input
The first line contains a single integer () — the number of testcases.
Each of the next lines contains two integers and () — the destination coordinates of the robot.
Output
For each testcase print a single integer — the minimum number of commands required for the robot to reach from if no command is allowed to be executed two or more times in a row.
Note
The explanations for the example test:
We use characters N, E, S, W and 0 to denote going north, going east, going south, going west and staying in the current cell, respectively.
In the first test case, the robot can use the following sequence: NENENENENE.
In the second test case, the robot can use the following sequence: NENENEN.
In the third test case, the robot can use the following sequence: ESENENE0ENESE.
In the fourth test case, the robot doesn't need to go anywhere at all.
In the fifth test case, the robot can use the following sequence: E0E.
Samples
5
5 5
3 4
7 1
0 0
2 0
10
7
13
0
3
在线编程 IDE
建议全屏模式获得最佳体验
| 进入全屏编程 | Alt+E |
| 递交评测 | Ctrl+Enter |
| 注释/取消注释 | Ctrl+/ |
| 缩放字体 | Ctrl+滚轮 |