因式分解 10 分

2021-10-05 14:20:33 字數 1187 閱讀 5000

輸入小於

1000

的整數,對其進行因式分解。

輸入格式:

輸入在一行中給出乙個不超過

1000

的整數a。

輸出格式:輸出a

的因式分解。

輸入樣例:

在這裡給出一組輸入。例如:

60

輸出樣例:

在這裡給出相應的輸出。例如:

60=2*2*3*5

方法一,沒有對輸入數本身是質數情況進行處理

x=int

(input

())

ls = if

x>=

2and

x<

1000:

n=x

fori

inrange(2

,x): if

n==1:

break;

ifn%i==0:

n=n/i

else:

i+=1

print

("%d="

%x,end='')

print

('*'

.join(

map(

str,ls)))

方法二deff(num,fac=):

fori in

range(2

,int

(num**

0.5)+1):

ifnum%i==0:

f(num//i,fac)

break

else:

facs= n=

int(

input

())

f(n,facs)

result=

"*".join(

map(

str,facs)) if

n==eval

(result):

print

('{}={}'

.format

(n,result))

階乘因式分解

時間限制 3000 ms 記憶體限制 65535 kb 難度 3 描述 給定兩個數n,m,其中m是乙個素數。將n 0 n 2 31 的階乘分解質因數,求其中有多少個m。注 為求冪符號。輸入 第一行是乙個整數s 0 輸出輸出m的個數 樣例輸入 3 100 5 16 2 1000000000 13 樣例...

因式分解總結

因式分解其實是乙個很簡單的應用,這裡做一下小小的總結 計算乙個數的所有因子 這裡只需要找到這個數的平方根的因子,然後再用該數分別除以每個因子,就會找到每個因子對應的另乙個因子 int a 10000 num 0 儲存n的因子 void factor int n a中從0到num 1儲存了n的所有因子...

階乘因式分解

描述 給定兩個數m,n,其中m是乙個素數。將n 0 n 10000 的階乘分解質因數,求其中有多少個m。輸入 第一行是乙個整數s 0 輸出輸出m的個數。樣例輸入 2 100 5 16 2 樣例輸出 24 15 includeint main printf d n sum return 0 剛看到這道...