(以“分类:贪心 ==摘要== {{信息题|Amr and Pins|http://acm.hust.edu.cn/vjudge/contest/view.action?cid{{=}}70536#problem/C|1|100|数据类型|7|time=2015-02-23 ...”为内容创建页面) |
小 (分类) |
||
| (未显示1个用户的1个中间版本) | |||
| 第1行: | 第1行: | ||
| − | [[分类: | + | [[分类:简单数学问题]] |
==摘要== | ==摘要== | ||
{{信息题|Amr and Pins|http://acm.hust.edu.cn/vjudge/contest/view.action?cid{{=}}70536#problem/C|1|100|数据类型|7|time=2015-02-23 13:02:35}} | {{信息题|Amr and Pins|http://acm.hust.edu.cn/vjudge/contest/view.action?cid{{=}}70536#problem/C|1|100|数据类型|7|time=2015-02-23 13:02:35}} | ||
| 第10行: | 第10行: | ||
{{无边框大照片|Knowledge/Algorithm/CodeForces/507B.jpg}} | {{无边框大照片|Knowledge/Algorithm/CodeForces/507B.jpg}} | ||
*目标点和当前点的距离为:<m>D=\sqrt{(x-x')^1+(y-y')^2}</m> | *目标点和当前点的距离为:<m>D=\sqrt{(x-x')^1+(y-y')^2}</m> | ||
| − | *最终需要步数为:<m>step=\frac{D}{2R}</m> | + | *最终需要步数为:<m>step=ceil(\frac{D}{2R})</m><small>(注:ceil是上取整)</small> |
*注意精度,要不直接double输入输出要不记得算的时候用long long | *注意精度,要不直接double输入输出要不记得算的时候用long long | ||
| + | |||
==代码== | ==代码== | ||
{{折叠|507B.cpp代码已折叠 | {{折叠|507B.cpp代码已折叠 | ||
| 题目链接 | 难度等级 | 完成状态 | 完成分数 | 最后编辑时间 | 失误原因(初次提交分数) |
|---|---|---|---|---|---|
| Amr and Pins | ★☆☆☆☆ | 答案正确 | 100 | 2015-02-23 13:02:35 | 数据类型(7) |
有一个半径为R,坐标在(x,y)的圆。每一步变换可以在圆周上点一个图钉,再将圆绕图钉旋转任意角度。问使得圆心到(x',y')的最小步数。
| 507B.cpp代码已折叠
展开折叠内容
|
|---|
#include<cstdlib>
#include<iostream>
#include<cmath>
using namespace std;
inline double/*fixed:不是int*/ sqr(const long long &x)
{
return x*x;
}
int main()
{
long long r,sx,sy,ex,ey;
cin>>r>>sx>>sy>>ex>>ey;
double dis=sqrt(sqr(ey-sy)+sqr(ex-sx));
cout<<ceil(dis/r/2)<<endl;
return 0;
}
|