快到碗里来
1 题目描述
小喵们很喜欢把自己装进容器里的(例如碗),但是要是碗的周长比喵的身长还短,它们就进
不去了。现在告诉你它们的身长,和碗的半径,请判断一下能否到碗里去。
1.1 输入描述:
输入有多组数据。
每组数据包含两个整数 n (1≤n≤
) 和 r (1≤r≤
),分别代表喵的身长和碗的半径。
圆周率使用 3.14。
1.2 输出描述:
对应每一组数据,如果喵能装进碗里就输出“Yes”;否则输出“No”。
1.3 输入例子:
6 1
7 1
9876543210 1234567890
1.4 输出例子:
Yes
No
No
2 解题思路
题目中输入的数值比较大,所以不能使用一般的字数字进行计算,要使用大整数乘法思想。
假设猫的长度是 m(m=
),碗的半径是 n(n=
),
取 3.14。只要比较
n 和 2*m*
的大小就可以判断猫是否可以进入碗里。因为 m、n 不能使用数字来表示,可以使用数
组 a、b 来表示他们。同时因为
是小数,要将 m、n、
统一成整数进行运算。可以将 m 放大 100
倍,
放大 100 倍。a[0]=0,a[1]=0,表示放大 100 倍,a[k]表示 m 中的
,b[k]表示 n 中
的
。
使用数组 PI 表示。PI[0]=4,PI[1]=1,PI[2]=3。计算 2*b*PI(结果为 r)再比较 r
与 n 的大小即可。
评论0