Cod sursa(job #1418347)

Utilizator tziplea_stefanTiplea Stefan tziplea_stefan Data 12 aprilie 2015 20:19:24
Problema Suma si numarul divizorilor Scor 10
Compilator cpp Status done
Runda Arhiva educationala Marime 0.79 kb
#include <fstream>

using namespace std;

ifstream fin("ssnd.in");
ofstream fout("ssnd.out");

int t, n, i, x;
int putere, exp;
int nrdiv, sumdiv;

int main()
{
    fin >> t;
    for (i=1; i<=t; i++)
    {
        fin >> n;
        nrdiv=1;
        sumdiv=1;
        putere=2;
        while (n!=1)
        {
            x=putere;
            while (n % putere==0)
            {
                x*=putere;
                exp++;
                n/=putere;
            }
            if (exp!=0)
            {
                nrdiv*=exp+1;
                x--;
                sumdiv*=x / (putere-1);
            }
            putere++;
            exp=0;
        }
        fout << nrdiv << " " << sumdiv << '\n';
    }
    fin.close();
    fout.close();
    return 0;
}