B. Amr and Pins
time limit per test

1 second

memory limit per test

256 megabytes

input

standard input

output

standard output

Amr loves Geometry. One day he came up with a very interesting problem.

Amr has a circle of radius r and center in point (x, y). He wants the circle center to be in new position (x', y').

In one step Amr can put a pin to the border of the circle in a certain point, then rotate the circle around that pin by any angle and finally remove the pin.

Help Amr to achieve his goal in minimum number of steps.

Input

Input consists of 5 space-separated integers r, x, y, x' y' (1 ≤ r ≤ 105,  - 105 ≤ x, y, x', y' ≤ 105), circle radius, coordinates of original center of the circle and coordinates of destination center of the circle respectively.

Output

Output a single integer — minimum number of steps required to move the center of the circle to the destination point.

Sample test(s)
Input
2 0 0 0 4
Output
1
Input
1 1 1 4 4
Output
3
Input
4 5 6 5 6
Output
0
Note

In the first sample test the optimal way is to put a pin at point (0, 2) and rotate the circle by 180 degrees counter-clockwise (or clockwise, no matter).

画个图可发现到以圆的边界为转动中心,可以到达的新的圆的中心集也是一个圆。

且原点x , y 到点x' , y'的关系.

是sqrt ((x-x')^2 + (y-y')^2) ..与 2*R的距离有关的。

#include<bits/stdc++.h>
using namespace std;
int main()
{
double r , x0 , y0 , x1 , y1 ;
while( cin >> r >> x0 >> y0 >> x1 >> y1 ) {
r *= 2.0 ;
double a = fabs(x1-x0) / r , b = fabs(y1-y0) / r ;
double c = sqrt( a*a + b*b );
printf("%.0lf\n",ceil(c));
}
}

最新文章

  1. Android开发常用工具类
  2. JQuery下focus()无法自动获取焦点的处理方法 jquery如何使文本框获得焦点
  3. apache和nginx
  4. C#实现通用数据过滤窗体
  5. BZOJ 3294: [Cqoi2011]放棋子
  6. JAVA里的字符串,String 类简单介绍
  7. plutil工具
  8. 【Kafka入门】搭建Kafka本地环境
  9. About struct in C
  10. python rsa 加密解密 (编解码,base64编解码)
  11. vue-router 中router-view不能渲染
  12. 【转】Wi-Fi 20mhz 和 40mhz 频段带宽的区别是什么?
  13. Bootstrap学习笔记(二)---常见工具和流程导航范例
  14. setsockopt()用法(参数详细说明) recv、send的超时处理
  15. sqlldr的用法 (这个最完整)
  16. C# SMTP 邮件发送之QQ邮箱篇
  17. Eclipse实用操作
  18. TCP连接的建立和断开
  19. python 多进程——使用进程池,多进程消费的数据)是一个队列的时候,他会自动去队列里依次取数据
  20. oracle入门(4)——少而常用的命令

热门文章

  1. ES2015箭头函数与普通函数对比理解
  2. org.mybatis.spring.mapper.MapperScannerConfigurer 类作用
  3. 2018-8-10-win10-UWP-发邮件
  4. 屏蔽命令任何输出的:&gt;/dev/null 2&gt;&amp;1
  5. spring的统一进行异常处理
  6. Ubunton
  7. [BZOJ3669] [NOI2004] 魔法森林 LCT维护最小生成树
  8. 分享学做的一个jsp注册页面
  9. hive的数据定义之创建数据库和表
  10. mysql delete from left 多表条件删除