SP4942题解
分解质因数板子题。
枚举
cnt++,n/=i;
最后输出。
最后,如果
那么,
AC代码:
#include<bits/stdc++.h>
#define int long long
using namespace std;
int n;
signed main(){
while(1){
cin>>n;
if(!n)return 0;//判断结束
for(int i=2;i<=sqrt(n);i++)//枚举i
if(n%i==0){
int ans=0;//计数
while(n%i==0){
ans++;
n/=i;
}
cout<<i<<"^"<<ans<<" ";
}
if(n!=1)cout<<n<<"^"<<1;//判断有没有除尽
cout<<endl;
}
}