求问,我哪里错了
原题链接:80453.阶乘分解2026-05-10 13:50:49
发布于:北京
#include<bits/stdc++.h>
using namespace std;
int n;
long long sum=1;
bool f(int x){
if(x==2){
return true;
}
for(int i=2;i*i<=x;i++){
if(x%i==0){
return false;
}
}
return true;
}
int main(){
cin>>n;
for(int i=2;i<=n;i++){
sum*=i;
}
for(int i=2; ;i++){
if(f(i)){
int m=0;
while(sum%i==0){
m++;
sum/=i;
}
if(m!=0){
cout<<i<<" "<<m<<endl;
}
}
if(sum==1){
break;
}
}
return 0;
}
全部评论 1
e
昨天 来自 浙江
0


















有帮助,赞一个