求助全TLE
查看原帖
求助全TLE
1285171
ruishou楼主2025/1/3 20:48
#include<bits/stdc++.h>
using namespace std;
bool l[1003];
int p(int a){
    for(int i=2;i*i<=a;i++){
        if(a%i==0)return 0;
    }
    return 1;
}
int main(){
    int n,b,c,a[1003]={};
    cin >> n;
    for(int i=2;i*i<=n;i++){
        l[i]=p(i);
    }
    for(int i=2;i<=n;i++){
        b=i;
        c=2;
        while(b!=1){
            if(b%c==0&&l[c]){
                a[c]++;
                b/=c;
            }
            else c++;
        }
    }
    for(int i=2;i<=1003;i++){
        if(a[i])cout << i << " " << a[i] << endl;
    }
    return 0;
}
2025/1/3 20:48
加载中...