题目:
题解:
每个数都可以分解为多个质数幂的乘积 且一个数最多只有一个大于自身开更的质因数
质因数都是对于大于1的因数而言的
代码:
#include<bits/stdc++.h>
using namespace std;
void divide(int x){
for(int i=2;i<=x/i;i++){
if(x%i==0){
int s=0;
while(x%i==0){
x/=i;
s++;
}
printf("%d %d\n",i,s);
}
}
if(x>1)printf("%d %d\n",x,1);
printf("\n");
}
int main(){
int n;
scanf("%d",&n);
for(int i=0;i<n;i++){
int a;
scanf("%d",&a);
divide(a);
}
return 0;
}