We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 89e8154 commit df72253Copy full SHA for df72253
3133-minimum-array-end.js
@@ -0,0 +1,39 @@
1
+/**
2
+ * @param {number} n
3
+ * @param {number} x
4
+ * @return {number}
5
+ */
6
+var minEnd = function (n, x) {
7
+ let str = x.toString(2).padStart(50, '0')
8
+
9
+ let map = new Map()
10
+ let c = 1
11
+ for (let i = str.length - 1; i >= 0; i--) {
12
+ if (str[i] === '0') {
13
+ map.set(c, i)
14
+ c *= 2
15
+ }
16
17
18
+ let sb = str.split('')
19
+ let cur = n
20
+ ;[...map.keys()]
21
+ .sort((a, b) => b - a)
22
+ .forEach((key) => {
23
+ if (cur > key) {
24
+ cur -= key
25
+ sb[map.get(key)] = '1'
26
27
+ })
28
29
+ let ans = 0
30
+ let step = 1
31
+ for (let i = sb.length - 1; i >= 0; i--) {
32
+ if (sb[i] === '1') {
33
+ ans += step
34
35
+ step *= 2
36
37
38
+ return ans
39
+}
0 commit comments