Skip to content

Commit 40dedba

Browse files
committed
✅ [1657] bruteforce
1 parent 2c14503 commit 40dedba

File tree

3 files changed

+90
-1
lines changed

3 files changed

+90
-1
lines changed

1657/my_solution.js

+57
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,57 @@
1+
/**
2+
* @param {string} word1
3+
* @param {string} word2
4+
* @return {boolean}
5+
*/
6+
var closeStrings = function (word1, word2) {
7+
if (word1.length !== word2.length) return false;
8+
let word1Map = new Map(), word2Map = new Map()
9+
10+
for (let i = 0; i < word1.length; i++) {
11+
word1Map.set(word1[i], (word1Map.get(word1[i]) ?? 0) + 1)
12+
}
13+
14+
for (let i = 0; i < word2.length; i++) {
15+
word2Map.set(word2[i], (word2Map.get(word2[i]) ?? 0) + 1)
16+
}
17+
18+
console.log(word1Map)
19+
console.log(word2Map)
20+
if (word1Map.size !== word2Map.size) return false
21+
22+
// let l1 = Array.from(word1Map), l2 = Array.from(word2Map)
23+
// console.log(l1)
24+
// console.log(l2)
25+
26+
// let len = word1Map.size
27+
// console.log("len")
28+
// console.log(len)
29+
console.log(Array.from(word1Map.values()).sort())
30+
console.log(Array.from(word2Map.values()).sort())
31+
let l1 = Array.from(word1Map.values()).sort(), l2 = Array.from(word2Map.values()).sort()
32+
33+
for (let [key, value] of word1Map) {
34+
if (!word2Map.has(key)) return false
35+
}
36+
37+
for (let i = 0; i < l1.length; i++) {
38+
if (l1[i] !== l2[i]) return false;
39+
}
40+
41+
42+
console.log(word1Map)
43+
console.log(word2Map)
44+
45+
return true;
46+
};
47+
48+
let x =
49+
closeStrings("cabbbaeee", "aeeecccbb")
50+
// closeStrings("cabbba", "acccbb")
51+
// closeStrings("cabbba", "aabbss")
52+
// closeStrings("abbzzca", "babzzcz")
53+
// closeStrings("abbbzcf", "babzzcz")
54+
// closeStrings("abc", "bca")
55+
56+
console.log("Res")
57+
console.log(x)

1657/solution.js

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
/**
2+
* @param {string} word1
3+
* @param {string} word2
4+
* @return {boolean}
5+
*/
6+
var closeStrings = function (word1, word2) {
7+
if (word1.length !== word2.length) return false;
8+
let word1Map = new Map(), word2Map = new Map()
9+
10+
for (let i = 0; i < word1.length; i++) {
11+
word1Map.set(word1[i], (word1Map.get(word1[i]) ?? 0) + 1)
12+
}
13+
14+
for (let i = 0; i < word2.length; i++) {
15+
word2Map.set(word2[i], (word2Map.get(word2[i]) ?? 0) + 1)
16+
}
17+
18+
if (word1Map.size !== word2Map.size) return false
19+
20+
for (let [key, value] of word1Map) {
21+
if (!word2Map.has(key)) return false
22+
}
23+
24+
let l1 = Array.from(word1Map.values()).sort(), l2 = Array.from(word2Map.values()).sort()
25+
26+
for (let i = 0; i < l1.length; i++) {
27+
if (l1[i] !== l2[i]) return false;
28+
}
29+
30+
return true;
31+
};

README.md

+2-1
Original file line numberDiff line numberDiff line change
@@ -112,6 +112,7 @@
112112
- [1512. Number of Good Pairs](./1512/)
113113
- [1569. Number of Ways to Reorder Array to Get Same BST](./1569/)
114114
- [1572. Matrix Diagonal Sum](./1572/)
115+
- [1657. Determine if Two Strings Are Close](./1657/)
115116
- [1672. Richest Customer Wealth](./1672/)
116117
- [1679. Max Number of K-Sum Pairs](./1679/)
117118
- [1732. Find the Highest Altitude](./1732/)
@@ -170,7 +171,7 @@ Batch create:
170171
NOTE: JS IS HERE
171172
-->
172173
```ssh
173-
chapter=1207 && mkdir ./$chapter && touch ./$chapter/my_solution.js && touch ./$chapter/solution.js && alias x="node ./$chapter/my_solution.js"
174+
chapter=1657 && mkdir ./$chapter && touch ./$chapter/my_solution.js && touch ./$chapter/solution.js && alias x="node ./$chapter/my_solution.js"
174175
```
175176
> then you can use `x` for quick debug.
176177

0 commit comments

Comments
 (0)