每日一题 1447. 最简分数

简介: 每日一题 1447. 最简分数

题:给你一个整数 n ,请你返回所有 0 到 1 之间(不包括 0 和 1)满足分母小于等于 n最简 分数 。分数可以以 任意 顺序返回。

解: 求最简分数,等价于分母和分子最大公约数是1。

class Solution:
    def simplifiedFractions(self, n: int) -> List[str]:
        res = []
        for i in range(2,n+1):
            for j in range(1,i):
                if gcd(i,j) == 1:
                    ff = f"{j}/{i}"
                    res.append(ff)
        return res



最大公约数gcd(a,b)是Python内置函数,可以直接使用。

gcd的递归实现

def gcd(a,b):
    return a if b == 0 else gcd(b, a%b)
相关文章
|
18天前
|
存储
力扣每日一题 6/9
力扣每日一题 6/9
19 5
|
18天前
力扣每日一题 6/3
力扣每日一题 6/3
13 3
|
18天前
|
机器学习/深度学习
力扣每日一题 5/31
力扣每日一题 5/31
16 2
|
1月前
刷题之Leetcode160题(超级详细)
刷题之Leetcode160题(超级详细)
22 0
|
1月前
|
算法
刷题之Leetcode704题(超级详细)
刷题之Leetcode704题(超级详细)
20 0
|
11月前
【LeetCode】每日一题(3)
【LeetCode】每日一题(3)
42 0
|
1月前
|
存储 容器
leetcode349刷题打卡
leetcode349刷题打卡
20 0
|
1月前
leetcode1047刷题打卡
leetcode1047刷题打卡
18 0
|
11月前
【LeetCode】每日一题(2)
【LeetCode】每日一题(2)
46 0
|
存储 测试技术
leetcode刷题(1)
各位朋友们,大家好,从今天开始我将陆续为大家更新我自己每天的leedcode刷题,我将会为大家说明每一步的来由,保证你一天新学会几道题目。各位朋友可以跟着博主每天刷几道题,相信两个月后大家的代码能力可以得到明显的提高。那么接下来就开始今天的刷题之路了哦。