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

  • Post author:
  • Post category: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)

提交结果:



版权声明:本文为qq_56177238原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。