輸出第n個醜數

2022-09-09 20:42:21 字數 774 閱讀 9028

problem description

如果乙個正整數最多隻包含2,3,5,7這四種素因子,則稱這個正整數為醜數。數列1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12, 14, 15, 16, 18, 20, 21, 24, 25, 27就是前20個醜數。

給定乙個n,請程式設計輸出第n個醜數。

input

輸入包含多組測試用例。

每組測試用例包含乙個整數n(1 <= n <= 5842),輸入為0時,表示測試資料的結束。

output

對於每組的n,請輸出第n個醜數。

每組輸出佔一行。

sample input12

341112

1321

2223

1001000

5842

0sample output12

341214

1528

3032

450385875

2000000000

#include

intmin

(int a,

int b,

int c,

int d)

intmain()

while

(scanf

("%d"

,&m)

!=eof

&&m)

printf

("%d\n"

,p[m]);

return0;

}

返回第n個醜數

把只包含質因子2 3和5的數稱作醜數 ugly number 例如 2,3,4,5,6,8,9,10,12,15,等,習慣上我們把1當做是第乙個醜數。寫乙個高效演算法,返回第n個醜數。解法1 判斷某個數是否為醜數,連續找到第n個醜數 include using namespace std bool ...

找到第N個醜數

把只包含因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第n個醜數。找到第n個醜數 方法1 存放num之前所有元素是否是醜數的flag int getuglynumber solution in...

求第N個醜數

原問題描述 把只包含質因子2 3和5的數稱作醜數 ugly number 例如6 8都是醜數,但14不是,因為它包含質因子7。習慣上我們把1當做是第乙個醜數。求按從小到大的順序的第n個醜數。這個題不是很難,基本上看完題就能想出解法,但是要想出時間複雜度為o n 的解法還是有點難度的。我最開始的解法時...