Cod sursa(job #3179357)

Utilizator Alexinfo22Rusu Luca Alexinfo22 Data 3 decembrie 2023 15:23:13
Problema Suma si numarul divizorilor Scor 0
Compilator cpp-64 Status done
Runda Arhiva educationala Marime 0.75 kb
#include <fstream>

using namespace std;
ifstream fin("ssnd.in");
ofstream fout("ssnd.out");
int t;
long long n,s,nr;
bool v[1000001];
int main()
{
    v[0]=1,v[1]=1;
    for(int i=2; i<=1000; i++)
        for(int j=2; j*i<=1000000; j++)
            v[i*j]=1;
    fin>>t;
    for(int i=1; i<=t; i++)
    {
        fin>>n;
        nr=2,s=1+n;
        for(int k=2; k*k<=n; k++)
            if(!v[k])
            {
                if(n%k==0)
                {
                    nr+=2;
                    s+=k+n/k;
                }
                if(k*k==n)
                {
                    nr--;
                    s-=k;
                }
            }
        fout<<nr<<' '<<s%9973<<'\n';
    }
        return 0;
    }