Skip to content

Commit 9e1ad63

Browse files
author
Gonzalo Diaz
committed
[REFACTOR] [Hacker Rank] projecteuler exercises.
* standarized interface.
1 parent c5686c2 commit 9e1ad63

File tree

3 files changed

+12
-7
lines changed

3 files changed

+12
-7
lines changed

src/hackerrank/projecteuler/euler001.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,23 +3,26 @@
33
*/
44

55
// Function to return gcd of a and b
6-
export function gcd(a, b) {
6+
function gcd(a, b) {
77
if (a === 0) return b;
88
return gcd(b % a, a);
99
}
1010

11-
export function sumAp(n, d) {
11+
function sumAp(n, d) {
1212
// Number of terms
1313
const _n = Math.floor(n / d);
1414

1515
return Math.floor((_n * (1 + _n) * d) / 2);
1616
}
1717

1818
// Function to find the sum of all multiples of a and b below n
19-
export function euler001(a, b, n) {
19+
function euler001(a, b, n) {
2020
// Since, we need the sum of multiples less than N
2121
const _n = n - 1;
2222
const lcm = Math.floor((a * b) / gcd(a, b));
2323

2424
return sumAp(_n, a) + sumAp(_n, b) - sumAp(_n, lcm);
2525
}
26+
27+
export default { euler001 };
28+
export { euler001 };

src/hackerrank/projecteuler/euler002.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
* @link Problem definition [[docs/hackerrank/projecteuler/euler002.md]]
33
*/
44

5-
export function fiboEvenSum(n) {
5+
function fiboEvenSum(n) {
66
let fibo1 = 1n;
77
let fibo2 = 1n;
88
let total = 0n;
@@ -20,8 +20,9 @@ export function fiboEvenSum(n) {
2020
return total;
2121
}
2222

23-
export function euler002(n) {
23+
function euler002(n) {
2424
return fiboEvenSum(n);
2525
}
2626

2727
export default { euler002 };
28+
export { euler002 };

src/hackerrank/projecteuler/euler003.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
import { BigIntMath } from '../lib/BigIntMath.js';
66

7-
export function primeFactor(n) {
7+
function primeFactor(n) {
88
if (n < 2) {
99
throw new Error('n must be greater than 2');
1010
}
@@ -26,8 +26,9 @@ export function primeFactor(n) {
2626
return maxPrimeFactor;
2727
}
2828

29-
export function euler003(n) {
29+
function euler003(n) {
3030
return primeFactor(BigInt(n));
3131
}
3232

3333
export default { euler003 };
34+
export { euler003 };

0 commit comments

Comments
 (0)