-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathgimmeTriplet.js
More file actions
23 lines (14 loc) · 780 Bytes
/
gimmeTriplet.js
File metadata and controls
23 lines (14 loc) · 780 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
// As a part of this Kata, you need to create a function that when provided with a triplet, returns the index of the numerical element that lies between the other two elements.
// The input to the function will be an array of three distinct numbers (Haskell: a tuple).
// For example:
// gimme([2, 3, 1]) => 0
// 2 is the number that fits between 1 and 3 and the index of 2 in the input array is 0.
// Another example (just to make sure it is clear):
// gimme([5, 10, 14]) => 1
// 10 is the number that fits between 5 and 14 and the index of 10 in the input array is 1.
function gimme (triplet) {
const min = Math.min(...triplet)
const max = Math.max(...triplet)
const middleNum = triplet.filter(x => x !== min && x !== max)
return triplet.indexOf(...middleNum)
}