Skip to content

Commit 957ce48

Browse files
committed
✨ [383]
1 parent 67e3cd2 commit 957ce48

File tree

4 files changed

+92
-11
lines changed

4 files changed

+92
-11
lines changed

383/my_solution.js

+51
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,51 @@
1+
/**
2+
* @param {string} ransomNote
3+
* @param {string} magazine
4+
* @return {boolean}
5+
*/
6+
const canConstruct = (ransomNote, magazine) => {
7+
let ransomNoteMap = new Map(), magazineMap = new Map();
8+
for (let i = 0; i < ransomNote.length; i++) {
9+
ransomNoteMap.set(ransomNote[i], (ransomNoteMap.get(ransomNote[i]) || 0) + 1);
10+
}
11+
12+
for (let i = 0; i < magazine.length; i++) {
13+
magazineMap.set(magazine[i], (magazineMap.get(magazine[i]) || 0) + 1);
14+
}
15+
16+
console.log("ransomNoteMap")
17+
console.log(ransomNoteMap)
18+
console.log("magazineMap")
19+
console.log(magazineMap)
20+
21+
// for (let [key, value] of ransomNoteMap) {
22+
// if (magazineMap.has(key)) {
23+
// ransomNoteMap.set(key, value - 1);
24+
// // && magazineMap.get(key) === value
25+
// // return true;
26+
// }
27+
// console.log(ransomNoteMap)
28+
// }
29+
30+
for (let i = 0; i < ransomNote.length; i++) {
31+
if (magazineMap.has(ransomNote[i]) && magazineMap.get(ransomNote[i]) > 0) {
32+
magazineMap.set(ransomNote[i], magazineMap.get(ransomNote[i]) - 1)
33+
} else {
34+
return false;
35+
}
36+
}
37+
38+
console.log("ransomNoteMap")
39+
console.log(ransomNoteMap)
40+
console.log("magazineMap")
41+
console.log(magazineMap)
42+
43+
return true;
44+
};
45+
46+
let x = null;
47+
x = canConstruct("bg", "efjbdfbdgfjhhaiigfhbaejahgfbbgbjagbddfgdiaigdadhcfcj");
48+
x = canConstruct("aa", "ab");
49+
x = canConstruct("aa", "aab");
50+
console.log("Result")
51+
console.log(x)

383/solution.js

+25
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
/**
2+
* @param {string} ransomNote
3+
* @param {string} magazine
4+
* @return {boolean}
5+
*/
6+
const canConstruct = (ransomNote, magazine) => {
7+
let ransomNoteMap = new Map(), magazineMap = new Map();
8+
for (let i = 0; i < ransomNote.length; i++) {
9+
ransomNoteMap.set(ransomNote[i], (ransomNoteMap.get(ransomNote[i]) || 0) + 1);
10+
}
11+
12+
for (let i = 0; i < magazine.length; i++) {
13+
magazineMap.set(magazine[i], (magazineMap.get(magazine[i]) || 0) + 1);
14+
}
15+
16+
for (let i = 0; i < ransomNote.length; i++) {
17+
if (magazineMap.has(ransomNote[i]) && magazineMap.get(ransomNote[i]) > 0) {
18+
magazineMap.set(ransomNote[i], magazineMap.get(ransomNote[i]) - 1)
19+
} else {
20+
return false;
21+
}
22+
}
23+
24+
return true;
25+
};

README.md

+3-1
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@
6161
- [371. Sum of Two Integers](./371/)
6262
- [374. Top K Frequent Elements](./374/)
6363
- [338. Counting Bits](./338/)
64+
- [383. Ransom Note](./383/)
6465
- [394. Decode String](./394/)
6566
- [412. Fizz Buzz](./412/)
6667
- [417. Pacific Atlantic Water Flow](./417/)
@@ -70,6 +71,7 @@
7071
- [647. Palindromic Substrings](./647/)
7172
- [771. Jewels and Stones](./771/)
7273
- [832. Flipping an Image](./832/)
74+
- [876. Middle of the Linked List](./876/)
7375
- [997. Find the Town Judge](./997/)
7476
- [1161. Maximum Level Sum of a Binary Tree](./1161/)
7577
- [1187. Make Array Strictly Increasing](./1187/)
@@ -133,7 +135,7 @@ Batch create:
133135
NOTE: JS IS HERE
134136
-->
135137
```ssh
136-
chapter=876 && mkdir ./$chapter && touch ./$chapter/my_solution.js && touch ./$chapter/solution.js && alias x="node ./$chapter/my_solution.js"
138+
chapter=383 && mkdir ./$chapter && touch ./$chapter/my_solution.js && touch ./$chapter/solution.js && alias x="node ./$chapter/my_solution.js"
137139
```
138140
> then you can use `x` for quick debug.
139141

test.js

+13-10
Original file line numberDiff line numberDiff line change
@@ -90,13 +90,16 @@
9090

9191
// console.log(0 > 0);
9292

93-
console.log(0 ^ 0);
94-
console.log(1 ^ 0);
95-
// convert 0 -> 1; 1 -> 0
96-
console.log(0 ^ 1);
97-
console.log(1 ^ 1);
98-
console.log()
99-
console.log(0 & 0);
100-
console.log(1 & 0);
101-
console.log(0 & 1);
102-
console.log(1 & 1);
93+
// console.log(0 ^ 0);
94+
// console.log(1 ^ 0);
95+
// // convert 0 -> 1; 1 -> 0
96+
// console.log(0 ^ 1);
97+
// console.log(1 ^ 1);
98+
// console.log()
99+
// console.log(0 & 0);
100+
// console.log(1 & 0);
101+
// console.log(0 & 1);
102+
// console.log(1 & 1);
103+
104+
// Array
105+
console.log(Array(26).fill(0));

0 commit comments

Comments
 (0)