-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathRansom Note.js
29 lines (25 loc) · 925 Bytes
/
Ransom Note.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/*Given an arbitrary ransom note string and another string containing letters from all the magazines, write a function that will return true if the ransom note can be constructed from the magazines ; otherwise, it will return false.
Each letter in the magazine string can only be used once in your ransom note.
Note:
You may assume that both strings contain only lowercase letters.
canConstruct("a", "b") -> false
canConstruct("aa", "ab") -> false
canConstruct("aa", "aab") -> true*/
/**
* @param {string} ransomNote
* @param {string} magazine
* @return {boolean}
*/
var canConstruct = function(ransomNote, magazine) {
if(ransomNote.length > magazine.length)
return false
superset = magazine.split('')
for(i=0; i<ransomNote.length; i++){
j = superset.indexOf(ransomNote[i])
if(j == -1)
return false
else
superset.splice(j,1)
}
return true
};