Cod sursa(job #2608958)
| Utilizator | Data | 1 mai 2020 22:33:33 | |
|---|---|---|---|
| Problema | Suma divizorilor | Scor | 30 |
| Compilator | cpp-64 | Status | done |
| Runda | Arhiva de probleme | Marime | 0.6 kb |
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
ifstream fin("sumdiv.in");
ofstream fout("sumdiv.out");
void factori_primi(int n)
{
int s=1,d,nrdiv=1,i=2;
while(n>1)
{
if(n%i==0)
{
d=0;
while(n%i==0)
{
d++;
n=n/i;
}
s=s*(pow(i,d+1)-1)/(i-1);
nrdiv=nrdiv*(d+1);
}
i++;
}
fout<<nrdiv<<endl;
}
int main()
{
int n,k;
fin>>n>>k;
factori_primi(pow(n,k));
return 0;
}
