Cod sursa(job #2100068)
| Utilizator | Data | 5 ianuarie 2018 03:09:17 | |
|---|---|---|---|
| Problema | Suma divizorilor | Scor | 30 |
| Compilator | cpp | Status | done |
| Runda | Arhiva de probleme | Marime | 0.57 kb |
#include <iostream>
#include <fstream>
#include <cmath>
using namespace std;
ifstream f("sumdiv.in");
ofstream g("sumdiv.out");
long long S=0,pr=1;
int i,j,n,A,B;
long long pow(int x,int y)
{
long long p=1;
while(y!=0)
{
if(y%2!=0)
p=p*x;
x=x*x;
y=y/2;
}
return p;
}
int main()
{
f>>A>>B;
pr=pow(A,B);
for(i=1;i<=sqrt(pr);i++)
if(pr%i==0)
{
S+=i;
if((pr/i)!=i)
S+=(pr/i);
S=S%9901;
}
g<<S;
}
