[编程题-蘑菇街]搬圆桌

[编程题] 搬圆桌

现在有一张半径为r的圆桌,其中心位于(x,y),现在他想把圆桌的中心移到(x1,y1)。每次移动一步,都必须在圆桌边缘固定一个点然后将圆桌绕这个点旋转。问最少需要移动几步。

输入描述:
一行五个整数r,x,y,x1,y1(1≤r≤100000,-100000≤x,y,x1,y1≤100000)
输出描述:
输出一个整数,表示答案
输入例子:
2 0 0 0 4
输出例子:
1
#include<iostream>
#include<cmath>
#include<algorithm>
using namespace std;
int main()
{
    long r,x,y,x1,y1;
    while(cin>>r>>x>>y>>x1>>y1)
    {
        long a=(x-x1)*(x-x1)+(y-y1)*(y-y1);
        long b=4*r*r;

        long step=sqrt(a/b)+((a%b>0)?1:0);
        cout<<step<<endl;
    }
}
时间: 2024-10-06 16:09:28

[编程题-蘑菇街]搬圆桌的相关文章

[编程题-蘑菇街] 最大间隔

[编程题] 最大间隔 给定一个递增序列,a1 <a2 <...<an .定义这个序列的最大间隔为d=max{ai+1 - ai }(1≤i<n),现在要从a2 ,a3 ..an-1 中删除一个元素.问剩余序列的最大间隔最小是多少? 输入描述: 第一行,一个正整数n(1<=n<=100),序列长度;接下来n个小于1000的正整数,表示一个递增序列. 输出描述: 输出答案. 输入例子: 51 2 3 7 8 输出例子: 4 #include<iostream>

[编程题-蘑菇街]回文串

[编程题] 回文串 给定一个字符串,问是否能通过添加一个字母将其变为回文串. 输入描述: 一行一个由小写字母构成的字符串,字符串长度小于等于10. 输出描述: 输出答案(YES\NO). 输入例子: coco 输出例子: YES #include<iostream> #include<string> using namespace std; bool f(string& s, int i) { int l = 0, r = s.size() - 1; if (l == i)

[编程题-蘑菇街]聊天

[编程题] 聊天 A和B是好友,他们经常在空闲时间聊天,A的空闲时间为[a1 ,b1 ],[a2 ,b2 ]..[ap ,bp ].B的空闲时间是[c1 +t,d1 +t]..[cq +t,dq +t],这里t为B的起床时间.这些时间包括了边界点.B的起床时间为[l,r]的一个时刻.若一个起床时间能使两人在任意时刻聊天,那么这个时间就是合适的,问有多少个合适的起床时间? 输入描述: 第一行数据四个整数:p,q,l,r(1≤p,q≤50,0≤l≤r≤1000).接下来p行数据每一行有一对整数ai,

[编程题-蘑菇街] 投篮游戏

有一个投篮游戏.球场有p个篮筐,编号为0,1...,p-1.每个篮筐下有个袋子,每个袋子最多装一个篮球.有n个篮球,每个球编号xi .规则是将数字为xi 的篮球投到xi 除p的余数为编号的袋里.若袋里已有篮球则球弹出游戏结束输出i,否则重复至所有球都投完.输出-1.问游戏最终的输出是什么? 输入描述: 第一行两个整数p,n(2≤p,n≤300).p为篮筐数,n为篮球数.接着n行为篮球上的数字xi(0≤xi≤1e9) 输出描述: 输出游戏的结果 输入例子: 10 5021534153 输出例子:

蘑菇街2016研发工程师在线编程题

传送门 第一题: [编程题] 搬圆桌 现在有一张半径为r的圆桌,其中心位于(x,y),现在他想把圆桌的中心移到(x1,y1).每次移动一步,都必须在圆桌边缘固定一个点然后将圆桌绕这个点旋转.问最少需要移动几步. 输入描述: 一行五个整数r,x,y,x1,y1(1≤r≤100000,-100000≤x,y,x1,y1≤100000) 输出描述: 输出一个整数,表示答案 输入例子: 2 0 0 0 4 输出例子: 1 题解转自:ixiaomo 思路很简单,千万别想复杂了 无论圆桌如何移动,都必须在圆

【好书推荐】《剑指Offer》之硬技能(编程题7~11)

本文例子完整源码地址:https://github.com/yu-linfeng/BlogRepositories/tree/master/repositories/sword <[好书推荐]<剑指Offer>之软技能> <[好书推荐]<剑指Offer>之硬技能(编程题1~6)> 持续更新,敬请关注公众号:coderbuff,回复关键字“sword”获取相关电子书. 7.重建二叉树 题目:输入某二叉树的前序遍历和中序遍历的结果,请重建该二叉树.例如:输入前序

POJ C程序设计进阶 编程题#3:运算符判定

编程题#3:运算符判定 来源: POJ (Coursera声明:在POJ上完成的习题将不会计入Coursera的最后成绩.) 注意: 总时间限制: 1000ms 内存限制: 65536kB 描述 两个整数 a 和 b 运算后得到结果 c.表示为:a ? b = c,其中,?可能是加法 +,减法 -,乘法 *,整除 / 或 取余 %.请根据输入的 a,b,c 的值,确定运算符.如果某种运算成立,则输出相应的运算符,如果任何运算都不成立,则输出 error. 例如: 输入: 3,4,5 输出: er

中国MOOC_面向对象程序设计——Java语言_期末考试编程题_1细胞自动机

期末考试编程题 返回 这是期末考试的编程题 温馨提示: 1.本次考试属于Online Judge题目,提交后由系统即时判分. 2.学生可以在考试截止时间之前提交答案,系统将取其中的最高分作为最终成绩. 1 细胞自动机(30分) 题目内容: 这是细胞自动机的非图形版本.细胞自动机是指在一个二维网格内,每一个网格是一个细胞.每个细胞有活和死两种状态. 初始时刻,有些细胞是活的,有些细胞是死的.自动机的每一步,根据每个细胞周围8个格子内的其他细胞的生存情况决定这个细胞下一步是否存活.具体的规则如下:

京东校招笔试(C++方向)编程题

这次笔试是今年校招我参加的第一次笔试..出了很多状况,基础知识不扎实,导致选择题耽误了太多时间,导致后面的题目没做完,编程题也没有在 时间内写出来,基本没有面试机会了.不过我继续研究第二个编程题,在10几分钟后做了出来. 这个题目具体已经不记得了,但是大概意思还是记得,我们把由4和7组成的数,按小大排序,例如:4 7 44 47 74 77 444 447 474 477 744 747 774 777 他们的序号依次为1,2,3,4.....,题目的输入是每行输入一个整数,可以很大(好像是最大