题目来源
原创
题目描述
计算机一般是用实数作为计算结果的,但『再临』不喜欢这样,他想让你帮他将实数转成分数。
输入格式
一个实数(浮点数)
输出格式
对应的分数,用a/b
表示
样例
Input 1
0.5
Output 1
1/2
Input 2
0.21875
Output 2
7/32
数据范围
对于100%
的数据,保证输入为有限小数,且不会出现超过5
位的实数
原创
计算机一般是用实数作为计算结果的,但『再临』不喜欢这样,他想让你帮他将实数转成分数。
一个实数(浮点数)
对应的分数,用a/b
表示
0.5
1/2
0.21875
7/32
对于100%
的数据,保证输入为有限小数,且不会出现超过5
位的实数
这题也许可以把:如样例2
0.21875换成21875分之100000(0数量取决与小数位数)
21875和100000取最大公因数
两边同时除以最大公因数。
或者说可以把21875和100000除到互质
得到7分之32
所以答案为:
解:
将 n 位小数化为分数。
(分数的分母就是 1 后面跟 n 个 0 ,分子为去掉小数点后的数去掉牵引 0 )
取分子分母最大公因数,化简。
wow!Amazing!
嗯?