0
已解决
刘意阳
初级天翼
初级天翼
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
long long n;
int a[44725],ans;
int main(){
cin>>n;
memset(a,0,sizeof(a));
for(int i=2;i<=sqrt(n);i++){
if(n%i==0){
while(n%i==0){
n/=i;
a[i]++;
}
ans++;
}
}
cout<<ans<<'\n';
for(int i=2;i<=44724;i++){
if(a[i]>0){
cout<<i<<' '<<a[i]<<'\n';
}
}
return 0;
}
为什么WA0分,我不理解!!!
刘意阳在2022-11-23 17:37:35追加了内容
顶d=====( ̄▽ ̄*)b
刘意阳在2022-11-23 17:39:34追加了内容
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
long long n;
int a[44725],ans;
int main(){
cin>>n;
memset(a,0,sizeof(a));
for(int i=2;i<=sqrt(n);i++){
if(n%i==0&&n){
while(n%i==0&&n){
n/=i;
a[i]++;
}
ans++;
}
}
cout<<ans<<'\n';
for(int i=2;i<=44724;i++){
if(a[i]>0){
cout<<i<<' '<<a[i]<<'\n';
}
}
return 0;
}
刘意阳在2022-11-23 17:41:42追加了内容
#include <iostream>
#include <cmath>
#include <cstring>
using namespace std;
long long n;
int a[44725],ans;
bool Q(int x){
for(int i=2;i<=sqrt(x);i++){
if(x%i==0)
return 0;
}
return 1;
}
int main(){
cin>>n;
memset(a,0,sizeof(a));
for(int i=2;i<=sqrt(n);i++){
if(n%i==0&&Q(i)){
while(n%i==0){
n/=i;
a[i]++;
}
ans++;
}
}
cout<<ans<<'\n';
for(int i=2;i<=44724;i++){
if(a[i]>0){
cout<<i<<' '<<a[i]<<'\n';
}
}
return 0;
}
依旧是WA0
刘意阳在2022-11-23 18:21:11追加了内容
在线等!急!
刘意阳在2022-11-23 18:52:12追加了内容
顶
0
0
0
0
0
0
0
姚天宇
高级光能
高级光能
定义long long类型的变量a,c
long long类型的桶数组10000005
输入
循环遍历2~sqrt(n)
while循环判断a%i等于0
那么桶数组++
a/=i
判断a是不是1
如果是,桶数组++
循环遍历1~10000000
如果桶不是0
cnt++
输出cnt换行
循环遍历1~10000000
如果桶不是0
输出i和桶换行
0
0