Common formula
function factorial(m) {
return m <= 1 ? m : m * factorial(m - 1);
}
function fibonacci(n) {
return n < 2 ? n : fibonacci(n - 1) + fibonacci(n - 2);
}
function prime(p) {
return p >= 1 ? isPrime(p) ? prime(--p).concat([p + 1]) : prime(--p) : [];
}
function isPrime(o) {
let mid = Math.floor(Math.sqrt(o));
while(mid > 1) {
if (o % mid === 0)return false;
mid--;
}
return true;
}
function ugly(u) {
return u >= 1 ? isUgly(u) ? ugly(--u).concat([u + 1]) : ugly(--u) : [];
}
function isUgly(n) {
[2, 3, 5].forEach(e => {
while(n && n % e === 0) {
n /= e;
}
});
return n === 1;
}
function getEquals(arr1, arr2) {
const result = [];
let i=0;
let j=0
while(i < arr1.length && j < arr2.length) {
if (arr1[i] === arr2[j]) {
result.push(arr1[i]);
i++;
j++;
} else if (arr1[i] > arr2[j]) {
j++;
} else if (arr1[i] < arr2[j]) {
i++;
}
}
return result;
}