輸入小於
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
("%d="
%x,end='')
('*'
.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):
('{}={}'
.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 剛看到這道...