Cod sursa(job #840600)
Utilizator | Gabriel Badea gabriel.badea | Data | 22 decembrie 2012 22:01:32 |
---|---|---|---|
Problema | Suma divizorilor | Scor | 10 |
Compilator | cpp | Status | done |
Runda | Arhiva de probleme | Marime | 0.51 kb |
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
int main()
{
FILE *f1, *f2;
long int a, b, c, i;
long int s = 0;
f1 = fopen("sumdiv.in", "r");
fscanf(f1,"%ld%ld", &a, &b);
c = a;
for(i=1;i<b;i++)
a *= c;
f2 = fopen("sumdiv.out", "w");
if(a == 0)
fprintf(f2, "0");
else
{
if(a % 2 == 1)
{
for(i=1;i<=a/2;i=i+2)
if(a % i == 0)
s += i;
}
else
for(i=1;i<=a/2;i++)
if(a % i == 0)
s += i;
fprintf(f2,"%d", (s+a) % 9901);
}
return 0;
}