1 solutions

  • 0
    @ 2024-10-5 19:24:45
    #include<iostream>
    using namespace std;
    bool zhi(long long n)
    {
        for(long long i=2;i*i<=n;i++)
        {
            if(n%i==0)
            {
                return false;
            }
        }
        return true;
    }
    /*int ceng(int n,int m)
    {
        int sum=0;
        while(n>=m)
        {
            sum++;
            n/=m;
        }
        return sum;
    }*/
    long long mi(long long n,long long m)
    {
        long long sum=1;
        for(long long i=1;i<=m;i++)
        {
            sum*=n;
        }
        return sum;
    }
    int main()
    {
        long long n,kk,sum;
        cin>>n;
        for(long long i=2;i<=n;i++)
        {
            if(zhi(i)==false)
            {
                continue;
            }
            kk=1;
            sum=0;
            while(n>=mi(i,kk))
            {
                sum+=n/mi(i,kk);
                kk++;
            }
            cout<<i<<" "<<sum<<endl;
        }
        return 0;
    }
    

    能过吗? 必须得

    • 1

    Information

    ID
    1122
    Time
    1000ms
    Memory
    512MiB
    Difficulty
    10
    Tags
    # Submissions
    189
    Accepted
    6
    Uploaded By