-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathconsonant value.js
17 lines (12 loc) · 1014 Bytes
/
consonant value.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
// Given a lowercase string that has alphabetic characters only and no spaces, return the highest value of consonant substrings. Consonants are any letters of the alphabet except "aeiou".
// We shall assign the following values: a = 1, b = 2, c = 3, .... z = 26.
// For example, for the word "zodiacs", let's cross out the vowels. We get: "z o d ia cs"
// -- The consonant substrings are: "z", "d" and "cs" and the values are z = 26, d = 4 and cs = 3 + 19 = 22. The highest is 26.
// solve("zodiacs") = 26
// For the word "strength", solve("strength") = 57
// -- The consonant substrings are: "str" and "ngth" with values "str" = 19 + 20 + 18 = 57 and "ngth" = 14
function solve(s) {
s = s.split('a').join(',').split('e').join(',').split('i').join(',').split('o').join(',').split('u').join(',').split(',')
const consonantValueArr = s.map(el=> el.split('').map(letter=> letter.charCodeAt()-96).reduce((acc, charCode)=> acc + charCode, 0))
return Math.max(...consonantValueArr)
};