首页 > 试题广场 >

打印从1到最大的n位数

[编程题]打印从1到最大的n位数
  • 热度指数:43265 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
输入数字 n,按顺序打印出从 1 到最大的 n 位十进制数。比如输入 3,则打印出 1、2、3 一直到最大的 3 位数 999。
1. 用返回一个整数列表来代替打印
2. n 为正整数,0 < n <= 5
示例1

输入

1

输出

[1,2,3,4,5,6,7,8,9]
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        upnum = '9'*n
        return [i for i in range(1, int(upnum)+1)]

发表于 2022-09-05 19:50:28 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        max = 1
        for i in range(n):
            max *= 10
        lst = [i for i in range(1, max)]
        return lst

发表于 2022-07-19 00:02:22 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        return list(range(1, 10**n))

发表于 2022-07-03 08:38:33 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        return range(1,10**n)
一行解决,并且返回一个迭代器,这样内存消耗会很小。

发表于 2022-06-15 17:40:30 回复(1)
# 方法1,字符串拼接法确定最大数
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        str = ''
        for i in range(n):
            str += '9'
        arr = [i for i in range(1, int(str)+1)]
        return arr

# 方法2 
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        return [i for i in range(1, 10**n)]

发表于 2022-05-15 13:05:41 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        return [i for i in range(1, pow(10,n))]


发表于 2022-05-03 15:22:40 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        last = 10**n
        list =[]
        for i in range(1,last):
            list.append(i)
        return list

发表于 2022-04-22 16:12:42 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        return [i for i in range(1,10**n)]

发表于 2022-04-22 14:58:04 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        return [i for i in range(1,10**n)]

发表于 2022-04-09 21:30:57 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        # write code here
        res=[]
        for i in range(1,10**n):
            res.append(i)
        return res

发表于 2022-01-27 09:59:41 回复(0)
class Solution:
    def printNumbers(self , n: int) -> List[int]:
        return [i for i in range(1,10**n)]

发表于 2021-12-23 22:12:32 回复(0)
class Solution:
    def printNumbers(self, n: int):
        if not n:
            return None
        res = []
        for i in range(1, 10**n):
            res.append(i)
        return res

发表于 2021-11-21 16:36:19 回复(0)

问题信息

难度:
14条回答 2792浏览

热门推荐

通过挑战的用户

查看代码