CloudLunar
主页
知识库
人文社科
自然科学
跨学科领域
热门分类
算法及题库
云璟月's
墨色集(设计)
指尖集(代码)
未央集(随笔)
流觞集(语录)
如花集(书影)
纸鸢集(小说)
登录
B站
微博
人人
开心
Twitter
Facebook
RSS订阅链接
留言板
关于我
在社交网站上关注我
B站
微博
人人
开心
Twitter
Facebook
RSS订阅
RSS订阅链接
留言板
关于我
查看CodeForces/507B的源代码
←
CodeForces/507B
因为以下原因,你没有权限编辑本页:
你刚才请求的操作只对属于该用户组的用户开放:
用户
您可以查看并复制此页面的源代码:
[[分类:简单数学问题]] ==摘要== {{信息题|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}} *来自寒假练习:[http://acm.hust.edu.cn/vjudge/contest/view.action?cid=70536 2015 Winter Warm up div2] C题 *原题链接:http://codeforces.com/problemset/problem/507/B ==题意== 有一个半径为R,坐标在(x,y)的圆。每一步变换可以在圆周上点一个图钉,再将圆绕图钉旋转任意角度。问使得圆心到(x',y')的最小步数。 ==题解== *如图,沿着黄线走可以知道,一个点可以走到绿圆上的任意一点。无限细分,容易知道,任意一步可以到达2R内的任何一点。也就是每一步最多走2R,最少不走。容易得到: {{无边框大照片|Knowledge/Algorithm/CodeForces/507B.jpg}} *目标点和当前点的距离为:<m>D=\sqrt{(x-x')^1+(y-y')^2}</m> *最终需要步数为:<m>step=ceil(\frac{D}{2R})</m><small>(注:ceil是上取整)</small> *注意精度,要不直接double输入输出要不记得算的时候用long long ==代码== {{折叠|507B.cpp代码已折叠 |<pre> #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; } </pre> |code507B}}
该页面使用的模板:
模板:=
(
查看源代码
)
模板:信息题
(
查看源代码
)
模板:折叠
(
查看源代码
)
模板:无边框大照片
(
查看源代码
)
返回
CodeForces/507B
。
著作权声明
[
编辑
]
除非另有说明,本
网站内容
采用
知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议
进行许可(中国大陆可以参照
知识共享署名-非商业性使用-相同方式共享 3.0 中国大陆许可协议
,如有不同以前者为准)。
如果需要商业化使用,请另联系作者取得授权。
关于
[
编辑
]
联系
@云璟月Lunar
的新浪微博
本站RSS:
RSS链接