M. Quadcopter Competition time limit per test 3 seconds memory limit per test 256 megabytes input standard input output standard outputadmin管理员组文章数量:1530063
Polycarp takes part in a quadcopter competition. According to the rules a flying robot should:
- start the race from some point of a field,
- go around the flag,
- close cycle returning back to the starting point.
Polycarp knows the coordinates of the starting point (x1, y1) and the coordinates of the point where the flag is situated (x2, y2). Polycarp’s quadcopter can fly only parallel to the sides of the field each tick changing exactly one coordinate by 1. It means that in one tick the quadcopter can fly from the point (x, y) to any of four points: (x - 1, y), (x + 1, y), (x, y - 1) or (x, y + 1).
Thus the quadcopter path is a closed cycle starting and finishing in (x1, y1) and containing the point (x2, y2) strictly inside.
What is the minimal length of the quadcopter path?
Input
The first line contains two integer numbers x1 and y1 ( - 100 ≤ x1, y1 ≤ 100) — coordinates of the quadcopter starting (and finishing) point.
The second line contains two integer numbers x2 and y2 ( - 100 ≤ x2, y2 ≤ 100) — coordinates of the flag.
It is guaranteed that the quadcopter starting point and the flag do not coincide.
Output
Print the length of minimal path of the quadcopter to surround the flag and return back.
Examples input
1 5 5 2output
18input
0 1 0 0output
8题意:给定两个点,求从出发点绕过旗子再回来的最短路径。 题解:这是一个矩形,注意判断两个点在同一条线上的情况,答案要加2。 Code:
var
ans,x1,y1,x2,y2:longint;
begin
readln(x1,y1);
readln(x2,y2);
ans:=2*(abs(x1-x2)+abs(y1-y2)+2);
if (x1=x2)or(y1=y2) then inc(ans,2);
writeln(ans);
end.
本文标签: Codeforces883MQuadcoptercompetition
版权声明:本文标题:Codeforces883M-Quadcopter Competition 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dianzi/1726694437a1081049.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论