洛谷P1075 質因數分解

2021-10-25 04:27:46 字數 584 閱讀 6324

ac**如下:

#include

#include

#define n 1000000

intfind

(int n)

}return1;

}int

main()

}}return0;

}

這題並不是第一次就過了的,第一次提交有三個資料超時。

初解**如下:

#include

int s[

10000000];

intdeside

(int n)

return1;

}int

main()

for(

int i=

0;ireturn0;

}

我是想找到(n/2)+1以下的所有質數,讓後將他們存到乙個陣列內,再進行除法找最大質數。

其實在提交之前我就感覺到了會超時,因為題目說了取值範圍大約時1e9,但沒想到更好的方法。

而我第二次提交就對其採取了加速模式,就是判斷與除法同時進行,這樣就不會在大數上tle了。

P1075 質因數分解 數論)

傳送門 思路 要仔細讀題,因為題目保證n nn是由兩個質因數相乘組成,顯然n nn的因數除了1,n 1,n1,n外只有這兩個,而且題目保證兩個質因數不同,所以顯然乙個 n sqrt 另外乙個 n sqrt n 因此只需列舉到n sqrt n 即可。ps ps ps 雖然是入門題,細細品味還是挺妙的。...

質因數分解

題目16 將乙個正整數分解質因數。例如 輸入90,列印出90 2 3 3 5。程式分析 對n進行分解質因數,應先找到乙個最小的質數k,然後按下述步驟完 成 1 如果這個質數恰等於n,則說明分解質因數的過程已經結束,列印出即可。2 如果n k,但n能被k整除,則應列印出k的值,並用n除以k的商,作為新...

質因數分解

短除法 求乙個數分解質因數,要從最小的質數除起,一直除到結果為質數為止。分解質因數的算式的叫短除法 和除法的性質差不多,還可以用來求多個個數的公因式 求 最大公因數的一種方法,也可用來求 最小公倍數。求幾個數最大公因數 的方法,開始時用觀察比較的方法,即 先把每個數的因數找出來,然後再找出公因數,最...