17 列印從1到最大的n位數

2021-10-20 19:14:23 字數 1128 閱讀 3028

輸入數字n,按順序列印出從1到最大的n位十進位制數。比如輸入3,則列印出1、2、3一直到最大的3位數999

示例 1:

輸入:n = 1

輸出:[1,2,3,4,5,6,7,8,9]

說明:題目要求列印 「從1至最大的n位數的列表」 ,因此需考慮以下兩個問題:

最大的n位數(記為end)和位數n的關係: 例如最大的1位數是9,最大的2位數是99,最大的3位數是999。則可推出公式:

e nd

=10n

−1end = 10^n - 1

end=10

n−1大數越界問題:n較大時,end會超出int整型的取值範圍,超出取值範圍的數字無法正常儲存。但由於本題要求返回int型別陣列,相當於預設所有數字都在int整型取值範圍內,因此不考慮大數越界問題。

故只需定義區間 [1,

10n−

1][1, 10^n - 1]

[1,10n

−1]和步長1,通過for迴圈生成結果列表res並返回即可。

17 列印從1到最大的n位數 python

題目 輸入數字n,按順序列印從1到最大的n位十進位制數。大整數問題 def print max n n res 0 for i in range n while not is max res res list plus 1 res print res def is max arrys for arr...

演算法 17 列印從1到最大的n位數

1 要列印從1到最大的n位數,題目要求把列印的數放在乙個陣列裡面,首先要確定這個陣列的長度是多少 pow 方法可返回 x 的 y 次冪的值。我們用這個函式方法可以求得陣列的長度 len math.pow 10,n 12 將長度為len的陣列,從1按順序列印出來 array.from使用箭頭語法和對映...

劍指 17 列印從1到最大的n位數

題目描述輸入數字n,按順序列印出從1到最大的n位十進位制數。比如輸入3,則列印出1,2,3一直到最大的3位數999.思路分析 考查大數的表示與計算.將分為3個模組。增長數字。列印數字。面試題17.列印從1到最大的n位數 include include using namespace std bool...