0
点赞
收藏
分享

微信扫一扫

LeetCode题解(0357):计算各个位数不同的数字个数(Python)


题目:​​原题链接​​(中等)

标签:数学、回溯算法、动态规划

解法

时间复杂度

空间复杂度

执行用时

Ans 1 (Python)

O ( l o g 2 N )

O ( l o g N )

40ms (54.68%)

Ans 2 (Python)

Ans 3 (Python)

解法一:

class Solution:
def countNumbersWithUniqueDigits(self, n: int) -> int:
if n == 0:
return 1
if n == 1:
return 9 + self.countNumbersWithUniqueDigits(0)
else:
res = 9 * 9
for i in range(2, n):
res *= (10 - i)
return res + self.countNumbersWithUniqueDigits(n - 1)



举报

相关推荐

0 条评论