prettier fixes & added test cases for Project Euler problem 4 (#1566)

* 📦 NEW: Added solution for ProjectEuler-007

* 🐛 FIX: Spelling mistake fixes

* 👌 IMPROVE: changed variable name from `inc` to `candidateValue` and thrown error in case of invalid input

* 👌 IMPROVE: Modified the code

* 👌 IMPROVE: Added test case for ProjectEuler Problem001

* 👌 IMPROVE: Added test cases for Project Euler Problem 4

* 👌 IMPROVE: auto prettier fixes

---------

Co-authored-by: Omkarnath Parida <omkarnath.parida@yocket.in>
This commit is contained in:
Omkarnath Parida
2023-10-24 22:49:37 +05:30
committed by GitHub
parent fb134b10b0
commit 9a875264cc
7 changed files with 49 additions and 38 deletions

View File

@ -16,7 +16,7 @@ function BinaryCountSetBits(a) {
let count = 0
while (a) {
a &= (a - 1)
a &= a - 1
count++
}

View File

@ -35,6 +35,6 @@ export const isAutomorphic = (n) => {
n = Math.floor(n / 10)
n_sq = Math.floor(n_sq / 10)
}
return true
}

View File

@ -9,19 +9,19 @@ describe('AutomorphicNumber', () => {
})
test.each([
{ n: -3 , expected: false },
{ n: -25 , expected: false },
{ n: -3, expected: false },
{ n: -25, expected: false }
])('should return false when n is negetive', ({ n, expected }) => {
expect(isAutomorphic(n)).toBe(false)
})
test.each([
{ n: 7 , expected: false },
{ n: 83 , expected: false },
{ n: 0 , expected: true },
{ n: 1 , expected: true },
{ n: 376 , expected: true },
{ n: 90625 , expected: true },
{ n: 7, expected: false },
{ n: 83, expected: false },
{ n: 0, expected: true },
{ n: 1, expected: true },
{ n: 376, expected: true },
{ n: 90625, expected: true }
])('should return $expected when n is $n', ({ n, expected }) => {
expect(isAutomorphic(n)).toBe(expected)
})

View File

@ -1,8 +1,8 @@
// https://projecteuler.net/problem=6
export const squareDifference = (num = 100) => {
let sumOfSquares = (num)*(num+1)*(2*num+1)/6
let sums = (num*(num+1))/2
let sumOfSquares = (num * (num + 1) * (2 * num + 1)) / 6
let sums = (num * (num + 1)) / 2
return sums ** 2 - sumOfSquares // difference of square of the total sum and sum of squares
}

View File

@ -0,0 +1,11 @@
import { largestPalindromic } from '../Problem004.js'
describe('Largest Palindromic Number', () => {
test('if digit is 2', () => {
expect(largestPalindromic(2)).toBe(9009)
})
// Project Euler Condition Check
test('if digit is 3', () => {
expect(largestPalindromic(3)).toBe(906609)
})
})

View File

@ -1,29 +1,29 @@
import { binaryEquivalent } from "../BinaryEquivalent";
import { binaryEquivalent } from '../BinaryEquivalent'
const tests = [
{
test: 2,
expectedValue: "10"
},
{
test: 0,
expectedValue: "0"
},
{
test: 543,
expectedValue: "1000011111"
},
{
test: 4697621023,
expectedValue: "100011000000000000000001000011111"
}
{
test: 2,
expectedValue: '10'
},
{
test: 0,
expectedValue: '0'
},
{
test: 543,
expectedValue: '1000011111'
},
{
test: 4697621023,
expectedValue: '100011000000000000000001000011111'
}
]
describe("Binary Equivalent", () => {
test.each(tests)(
"of $test should be $expectedValue",
({test, expectedValue}) => {
expect(binaryEquivalent(test)).toBe(expectedValue);
}
)
describe('Binary Equivalent', () => {
test.each(tests)(
'of $test should be $expectedValue',
({ test, expectedValue }) => {
expect(binaryEquivalent(test)).toBe(expectedValue)
}
)
})

View File

@ -36,4 +36,4 @@ export function interpolationSearch(arr, key) {
}
return -1
}
}