Skip to content

Instantly share code, notes, and snippets.

@chygoz2
Last active Apr 27, 2021
Embed
What would you like to do?
Algo friday 3 solution
const startAndEnd = (nums, val) => {
if (!Array.isArray(nums) || typeof val !== 'number') throw new Error('Invalid input')
const min = Math.min(...nums);
let positions = [-1, -1]
let countLessThanVal = 0
let countOfVal = 0
let countOfMin = 0
for (let num of nums) {
if (num === min) countOfMin++
if (num < val) countLessThanVal++
if (num === val) countOfVal++
}
if (!countOfVal) return positions
positions[0] = val === min ? 0 : countLessThanVal + countOfMin - 1
positions[1] = positions[0] + countOfVal - 1
return positions
}
@chygoz2
Copy link
Author

chygoz2 commented Apr 27, 2021

Thank you.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment