3 条题解
-
2
#include<bits/stdc++.h> using namespace std; int is_prime(int x){ int sum=0; for(int i=1;i<=x/i;i++){ if(x%i==0){ sum+=2; if(x/i==i)sum--; } } return sum==2; } int prime[1005],c=0; int main(){ int n; cin>>n; for(int i=2;i<=n;i++){ if(is_prime(i)){ prime[c]=i; c++; } } printf("%d=",n); int f=0; for(int i=0;i<c;i++){ int cnt=0; while(n%prime[i]==0){ n/=prime[i]; cnt++; } if(cnt!=0){ if(f)printf("*"); if(cnt==1){ printf("%d",prime[i]); }else{ printf("%d^%d",prime[i],cnt); } f=1; } } }
-
2
#include<bits/stdc++.h> using namespace std; int f(int x){ int flag=0; for(int i=1;i<=x;i++){ if(x%i==0){ flag++; } } return flag==2; } int main(){ int n; cin>>n; int cnt[505]={0},c=0; for(int i=1;i<=n;i++){ if(f(i)==1){ cnt[c]=i; c++; } } printf("%d=",n); int f=0; for(int i=0;i<c;i++){ int prif=0; while(n%cnt[i]==0){ n/=cnt[i]; prif++; } if(prif!=0){ if(f)printf("*"); if(prif==1){ printf("%d",cnt[i]); } else{ printf("%d^%d",cnt[i],prif); } f=1; } } return 0; }
-
0
#include<bits/stdc++.h> using namespace std; int f(int x){ int flag=0; for(int i=1;i<=x;i++){ if(x%i==0){ flag++; } } return flag==2; } int main(){ int n; cin>>n; int cnt[505]={0},c=0; for(int i=1;i<=n;i++){ if(f(i)==1){ cnt[c]=i; c++; } } printf("%d=",n); int f=0; for(int i=0;i<c;i++){ int prif=0; while(n%cnt[i]==0){ n/=cnt[i]; prif++; } if(prif!=0){ if(f)printf("*"); if(prif==1){ printf("%d",cnt[i]); } else{ printf("%d^%d",cnt[i],prif); } f=1; } } return 0; }
- 1
信息
- ID
- 127
- 时间
- 1000ms
- 内存
- 256MiB
- 难度
- 6
- 标签
- 递交数
- 29
- 已通过
- 12
- 上传者