Cod sursa(job #130954)
Utilizator | Data | 2 februarie 2008 17:49:38 | |
---|---|---|---|
Problema | Suma divizorilor | Scor | 30 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.37 kb |
#include<stdio.h>
#include<math.h>
long long a,b,i,s,x;
int main(){
freopen("sumdiv.in","r",stdin);
freopen("sumdiv.out","w",stdout);
scanf("%lld",&a);
scanf("%lld",&b);
if(a==0)
s=0;
else
if(a==1)
s=1;
else
if(b==0)
s=1;
else{
x=pow(a%9901,b%9901);
for(i=1;i<=x;i++)
if(x%i==0)
s=(s+i)%9901;
}
printf ("%lld\n",s);
return 0;
}