Cod sursa(job #2753706)

Utilizator luiz_felipeLuiz Felipe luiz_felipe Data 24 mai 2021 01:11:24
Problema Suma divizorilor Scor 10
Compilator cpp-64 Status done
Runda Arhiva de probleme Marime 0.51 kb
#include <fstream>
using namespace std;
long long putere(int a, int b);
ifstream f("sumdiv.in");
ofstream g("sumdiv.out");
int main() {
	int a, b;
	f >> a >> b;
	long long S = 0, i, j, x;
	x = putere(a, b);
	for (i = 1; i * i <= x; ++i)
		if (!(x % i)) {
			S += i;
			j = x / i;
			if (i != j) S += j;
		}
	g << S % 9901 << '\n';
	f.close();
	g.close();
}
long long putere(int a, int b) {
	long long p = 1;
	for (long long k = 1; k <= b; k << 1) {
		if (b & k) p *= a;
		a = a * a;
	}
	return p;
}