902-Numbers-At-Most-N-Given-Digit-Set
Sat 17 May 2025
https://leetcode.com/problems/numbers-at-most-n-given-digit-set
import pyutil as pyu
pyu.get_local_pyinfo()
print(pyu.ps2("python-dotenv"))
from typing import List
class Solution:
def atMostNGivenDigitSet(self, D: List[str], N: int) -> int:
ans = 0
num = str(N)
for i in range(1, len(num)):
ans += len(D)**i
for i, c in enumerate(num):
dHasSameNum = False
for digit in D:
if digit < c:
ans += len(D)**(len(num) - i - 1)
elif digit == c:
dHasSameNum = True
if not dHasSameNum:
return ans
return ans + 1
new Solution().atMostNGivenDigitSet()
Score: 5
Category: leetcode