File tree Expand file tree Collapse file tree 3 files changed +69
-8
lines changed
solution/2200-2299/2233.Maximum Product After K Increments Expand file tree Collapse file tree 3 files changed +69
-8
lines changed Original file line number Diff line number Diff line change 63
63
64
64
```
65
65
66
- ### ** TypeScript**
67
-
68
- ``` ts
69
-
66
+ ### ** JavaScript**
67
+
68
+ ``` js
69
+ /**
70
+ * @param {number[]} nums
71
+ * @param {number} k
72
+ * @return {number}
73
+ */
74
+ var maximumProduct = function (nums , k ) {
75
+ const n = nums .length ;
76
+ let pq = new MinPriorityQueue ();
77
+ for (let i = 0 ; i < n; i++ ) {
78
+ pq .enqueue (nums[i]);
79
+ }
80
+ for (let i = 0 ; i < k; i++ ) {
81
+ pq .enqueue (pq .dequeue ().element + 1 );
82
+ }
83
+ let ans = 1 ;
84
+ const limit = 10 ** 9 + 7 ;
85
+ for (let i = 0 ; i < n; i++ ) {
86
+ ans = ans * pq .dequeue ().element % limit;
87
+ }
88
+ return ans;
89
+ };
70
90
```
71
91
72
92
### ** ...**
Original file line number Diff line number Diff line change @@ -56,10 +56,30 @@ Note that there may be other ways to increment nums to have the maximum product.
56
56
57
57
```
58
58
59
- ### ** TypeScript**
60
-
61
- ``` ts
62
-
59
+ ### ** JavaScript**
60
+
61
+ ``` js
62
+ /**
63
+ * @param {number[]} nums
64
+ * @param {number} k
65
+ * @return {number}
66
+ */
67
+ var maximumProduct = function (nums , k ) {
68
+ const n = nums .length ;
69
+ let pq = new MinPriorityQueue ();
70
+ for (let i = 0 ; i < n; i++ ) {
71
+ pq .enqueue (nums[i]);
72
+ }
73
+ for (let i = 0 ; i < k; i++ ) {
74
+ pq .enqueue (pq .dequeue ().element + 1 );
75
+ }
76
+ let ans = 1 ;
77
+ const limit = 10 ** 9 + 7 ;
78
+ for (let i = 0 ; i < n; i++ ) {
79
+ ans = ans * pq .dequeue ().element % limit;
80
+ }
81
+ return ans;
82
+ };
63
83
```
64
84
65
85
### ** ...**
Original file line number Diff line number Diff line change
1
+ /**
2
+ * @param {number[] } nums
3
+ * @param {number } k
4
+ * @return {number }
5
+ */
6
+ var maximumProduct = function ( nums , k ) {
7
+ const n = nums . length ;
8
+ let pq = new MinPriorityQueue ( ) ;
9
+ for ( let i = 0 ; i < n ; i ++ ) {
10
+ pq . enqueue ( nums [ i ] ) ;
11
+ }
12
+ for ( let i = 0 ; i < k ; i ++ ) {
13
+ pq . enqueue ( pq . dequeue ( ) . element + 1 ) ;
14
+ }
15
+ let ans = 1 ;
16
+ const limit = 10 ** 9 + 7 ;
17
+ for ( let i = 0 ; i < n ; i ++ ) {
18
+ ans = ans * pq . dequeue ( ) . element % limit ;
19
+ }
20
+ return ans ;
21
+ } ;
You can’t perform that action at this time.
0 commit comments