An integer has sequential digits if and only if each digit in the number is one more than the previous digit.
Return a sorted list of all the integers in the range [low, high]
inclusive that have sequential digits.
Example 1:
Input: low = 100, high = 300 Output: [123,234]
Example 2:
Input: low = 1000, high = 13000 Output: [1234,2345,3456,4567,5678,6789,12345]
Constraints:
10 <= low <= high <= 10^9
思路:求出所有的candidate,然后判断是否在这个区间
class Solution(object):
def sequentialDigits(self, low, high):
"""
:type low: int
:type high: int
:rtype: List[int]
"""
res = []
for n in range(2,10):
for i in range(1,10-n+1):
s = int(''.join([str(i+j) for j in range(n)]))
if low<=s<=high:
res.append(s)
return res
s=Solution()
print(s.sequentialDigits(low = 100, high = 300))
print(s.sequentialDigits(low = 1000, high = 13000))