问题描述
给定一个非负整数 n,计算各位数字都不同的数字 x 的个数,其中 0 ≤ x < 10n
示例:
输入: 2
输出: 91
解释: 答案应为除去 11,22,33,44,55,66,77,88,99...外,在 [0,100) 区间内的所有数字。...动态规划思考及解决
读完该问题,会想到动态规划+排列组合来决解,因为是求的不同数字的个数,所以要将每一个满足的值加起来,故采用动态规划是很方便的。...代码:
#动态规划
class Solution:
def countNumbersWithUniqueDigits(self, n: int) -> int:
dp=[1,10,91...A(res+i,l.replace(i,''))
A('','1234567890')
return self.num
参考文献
本文主要是讲了从动态规划