PAT (Basic Level) Practice 1062 最简分数 Python

根据题意,需要我们按照从小到大排序输出给定两个分数之间分母为输入正整数K的所有最简分数

fractions模块:用来支持分数运算

sys模块:内置标准输入,输入量大时节省时间

代码如下:

from fractions import Fraction
import sys
in_1,in_2,in_3 = sys.stdin.readline().split()
in_1,in_2=Fraction(in_1),Fraction(in_2)
in_3=int(in_3)
list_1=[]
if in_1>in_2:
    in_1,in_2 = in_2,in_1
mark=1
while True:
    if in_1<Fraction(mark,in_3)<in_2 and Fraction(mark,in_3).denominator==in_3:
        list_1.append(Fraction(mark,in_3))
    elif Fraction(mark,in_3)>=in_2:
        break
    mark=mark+1
print(*list_1)

提交结果:

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值