11
2024-01-29 17:40:47
发布于:广东
44阅读
0回复
0点赞
#include <bits/stdc++.h>
using namespace std;
//判断素数
bool su(int a) {
for(int i=2; i<=sqrt(a); i++) {
if(a%i0)
return false;
}
return true;
}
int main() {
int n;
cin>>n;
int flag=1;//第一个输出的前面不加*号
for(int i=2; i<=n; i++) {
if(su(i)&&n%i0) {
int cnt=0;
while(n%i==0) {
cnt++;
n/=i;
}
if(cnt>1) {
if(!flag) //不是第一个输出的
cout<<"*"<<i<<"^"<<cnt;
else
cout<<i<<"^"<<cnt;
flag=0;//已经输出了第一个
} else {
if(flag) {//第一个输出
cout<<i;
flag=0;
} else
cout<<"*"<<i;
}
}
}
return 0;
}
全部评论 1
?
2024-01-29 来自 广东
0史
2024-01-29 来自 广东
0
有帮助,赞一个