Cod sursa(job #1065185)

Utilizator alin_c9UAIC Alin Ciocan alin_c9 Data 22 decembrie 2013 22:35:50
Problema Suma divizorilor Scor 0
Compilator cpp Status done
Runda Arhiva de probleme Marime 0.65 kb
#include<stdio.h>
#define ll long long
#define PRIM 9901

int pow(int num, int power) {

	ll product = num;
	int rez = 1;

	while (power) {
		if (power & 1) {
			rez = (product * rez) % PRIM;
		}
		product = (product * product) % PRIM;
		power >>= 1;
	}
	return rez;

}

int sumDiv(int n) {
	int sum = 1;
	for (int i = 2; i <= n; ++i) {
		if (n % i == 0) {
            sum = (sum + i) % PRIM;

		}


	}
	return sum;

}

int main() {

	int a, b, powab;

	freopen("sumdiv.in", "r", stdin);
	freopen("sumdiv.out","w",stdin);

	scanf("%d %d", &a, &b);

	powab = pow(a, b);

	printf("%d", sumDiv(powab));
	return 0;
}