problem 1075 分解素因子
假設x是乙個正整數,它的值不超過65535(即1輸入的第一行含乙個正整數k (1<=k<=10),表示測試例的個數,後面緊接著k行,每行對應乙個測試例,包含乙個正整數x。
每個測試例對應一行輸出,輸出x的素數乘積表示式,式中的素數從小到大排列,兩個素數之間用「*」表示乘法。 2
119828 11
2*2*3*3*3*7*13
先打表。再用乙個陣列來儲存素數,最後找素數裡面能夠整除k的素數,把這些素數儲存到另乙個陣列中。
#include#include#include#include#define ll long long
using namespace std;
const int maxn=1e6+10;
int a[maxn];
int b[maxn];
int c[maxn];
int main()
} }//將素數儲存到陣列b中
int p=0;
for(j=0;j<=65540;j++)
scanf("%d",&k);
while(k--)
else if(x%b[ss]!=0) ss++;
} k=sum;
for(i=0;iprintf("\n");
} return 0;
}
Problem 1075 分解素因子
problem 1075 分解素因子 假設x是乙個正整數,它的值不超過65535 即1輸入的第一行含乙個正整數k 1 k 10 表示測試例的個數,後面緊接著k行,每行對應乙個測試例,包含乙個正整數x。每個測試例對應一行輸出,輸出x的素數乘積表示式,式中的素數從小到大排列,兩個素數之間用 表示乘法。2...
Problem 1075 分解素因子
problem description 假設x是乙個正整數,它的值不超過65535 即1 x x 65535 請編寫乙個程式,將x分解為若干個素數的乘積。input 輸入的第一行含乙個正整數k 1 k 10 表示測試例的個數,後面緊接著k行,每行對應乙個測試例,包含乙個正整數x。output 每個測...
FOJ Problem 1075 分解素因子
problem 1075 分解素因子.temp x,遍歷2到x 2 找的是因數,不能畫素數一樣用sqrt 當前遍歷到i i是素數嗎?是 當temp能被i整除時,每次整除輸出一次i,temp temp i 只要此時的i不是最後乙個除數 即temp 1 就輸出 遍歷結束,如果temp x,說明temp沒...