简单题解
2026-06-25 12:52:58
发布于:上海
15阅读
0回复
0点赞
遍历的同时用ans和sum判断
#include <bits/stdc++.h>
using namespace std;
long long sum;
int ans;
int main() {
long long n;
cin>>n;
for(int i=2;i<=n;i++){
sum=0;
if(n%i==0){
while(n%i==0){
n/=i;
sum++;
}
if(sum==1&&ans==0){
cout<<i;
ans++;
}
else if(sum==1&&ans!=0) {
cout<<" * "<<i;
}
else {
ans++;
cout<<i<<"^"<<sum;
if(n>1) {
cout<<" * ";
ans=0;
}
}
}
}
return 0;
}
这里空空如也







有帮助,赞一个