練習 大整數的因子

2021-10-01 18:35:51 字數 689 閱讀 7901

已知正整數k滿足2<=k<=9,現給出長度最大為30位的十進位製非負整數c,求所有能整除c的k。

乙個非負整數c,c的位數<=30。

若存在滿足 c%k == 0 的k,從小到大輸出所有這樣的k,相鄰兩個數之間用單個空格隔開;若沒有這樣的k,則輸出"none"。

2 3 5 6

#include

using

namespace std;

intmain()

if(s==

0&&flag==0)

else

if(s==

0&&flag==1)

cout<<

" "<(flag==0)

cout<<

"none"

;}

一開始使用了如下的判斷方法,打算是找出一段倍數一部分一部分的減去,然後發現當是大資料的時候,如果不是因子的化就算是用long long s也會溢位,實際上,模擬小學的除法計算(取餘數)簡短的**就可以解決

for

(x=2

;x<=

9;x++)if

(s==

0&&flag==0)

else

if(s==

0&&flag==1)

cout<<

" "<}

大整數的因子

已知正整數k滿足2 k 9,現給出長度最大為30位的十進位製非負整數c,求所有能整除c的k.若干個非負整數c,c的位數 30 每行乙個c每乙個c的結果佔一行 1 若存在滿足 c k 0 的k,輸出所有這樣的k,中間用空格隔開,最後乙個k後面沒有空格。2 若沒有這樣的k則輸出 none 注意整數溢位問...

大整數的因子

題目描述 已知正整數k滿足2 k 9,現給出長度最大為30位的十進位製非負整數c,求所有能整除c的k。輸入 乙個非負整數c,c的位數 30。輸出 若存在滿足 c k 0 的k,從小到大輸出所有這樣的k,相鄰兩個數之間用單個空格隔開 若沒有這樣的k,則輸出 none 輸入樣例 3072 13 輸出樣例...

大整數的因子

已知正整數k滿足2 k 9,現給出長度最大為30位的十進位製非負整數c,求所有能整除c的k。乙個非負整數c,c的位數 30。若存在滿足 c k 0 的k,從小到大輸出所有這樣的k,相鄰兩個數之間用單個空格隔開 若沒有這樣的k,則輸出 none 30 2 3 5 6 列舉 求和,include inc...