File tree 2 files changed +63
-0
lines changed
2 files changed +63
-0
lines changed Original file line number Diff line number Diff line change
1
+ /**
2
+ * @param {string } jewels
3
+ * @param {string } stones
4
+ * @return {number }
5
+ */
6
+ const numJewelsInStones = ( jewels , stones ) => {
7
+ let count = 0 , jMap = new Map ( ) ;
8
+
9
+ for ( let i = 0 ; i < jewels . length ; i ++ ) {
10
+ jMap . set ( jewels [ i ] , ( jMap . get ( jewels [ i ] ) || 0 ) + 1 ) ;
11
+ }
12
+
13
+ for ( let i = 0 ; i < stones . length ; i ++ ) {
14
+ if ( jMap . has ( stones [ i ] ) ) count ++ ;
15
+ }
16
+
17
+ return count ;
18
+ } ;
19
+
20
+ // from chatgpt
21
+ /**
22
+ * @param {string } jewels
23
+ * @param {string } stones
24
+ * @return {number }
25
+ */
26
+ function numJewelsInStones2 ( jewels , stones ) {
27
+ const jewelSet = new Set ( jewels ) ;
28
+ let count = 0 ;
29
+
30
+ console . log ( "jewelSet" )
31
+ console . log ( jewelSet )
32
+
33
+ for ( let i = 0 ; i < stones . length ; i ++ ) {
34
+ if ( jewelSet . has ( stones [ i ] ) ) {
35
+ count ++ ;
36
+ }
37
+ }
38
+
39
+ return count ;
40
+ }
41
+
42
+
43
+ let x = numJewelsInStones ( "aA" , "aAAbbbb" )
44
+
45
+ console . log ( x )
Original file line number Diff line number Diff line change
1
+ /**
2
+ * @param {string } jewels
3
+ * @param {string } stones
4
+ * @return {number }
5
+ */
6
+ const numJewelsInStones = ( jewels , stones ) => {
7
+ let count = 0 , jMap = new Map ( ) ;
8
+
9
+ for ( let i = 0 ; i < jewels . length ; i ++ ) {
10
+ jMap . set ( jewels [ i ] , ( jMap . get ( jewels [ i ] ) || 0 ) + 1 ) ;
11
+ }
12
+
13
+ for ( let i = 0 ; i < stones . length ; i ++ ) {
14
+ if ( jMap . has ( stones [ i ] ) ) count ++ ;
15
+ }
16
+
17
+ return count ;
18
+ } ;
You can’t perform that action at this time.
0 commit comments