2025-01-24 21:01:32 -08:00
|
|
|
int mod (int a, int b) {
|
|
|
|
|
var t = a;
|
|
|
|
|
while (t - b >= 0) {
|
|
|
|
|
t = t - b;
|
|
|
|
|
}
|
|
|
|
|
return t;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int div (int a, int b) {
|
|
|
|
|
var result = 0;
|
|
|
|
|
var num = a;
|
|
|
|
|
var denom = b;
|
|
|
|
|
while (num > 0) {
|
|
|
|
|
num = num - denom;
|
|
|
|
|
result = result + 1;
|
|
|
|
|
}
|
|
|
|
|
return result;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int no_of_factors(int n) {
|
|
|
|
|
var num_fact = 1;
|
|
|
|
|
var input = n;
|
|
|
|
|
for (var i = 2; i * i < input + 1; i=i+1;) {
|
|
|
|
|
var power = 0;
|
|
|
|
|
while (mod(n, i) == 0) {
|
|
|
|
|
n = div(n, i);
|
|
|
|
|
power = power + 1;
|
|
|
|
|
}
|
|
|
|
|
num_fact = num_fact * (power + 1);
|
|
|
|
|
}
|
|
|
|
|
if (n > 1) {
|
|
|
|
|
num_fact = num_fact * 2;
|
|
|
|
|
}
|
|
|
|
|
return num_fact;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
int program (int argc, string[] argv) {
|
|
|
|
|
return no_of_factors(6400);
|
|
|
|
|
}
|