We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
There was an error while loading. Please reload this page.
1 parent 59a160d commit 5342266Copy full SHA for 5342266
1387.将整数按权重排序.js
@@ -0,0 +1,35 @@
1
+/**
2
+ * @param {number} lo
3
+ * @param {number} hi
4
+ * @param {number} k
5
+ * @return {number}
6
+ */
7
+var getKth = function(lo, hi, k) {
8
+ const map = new Map();
9
+ map.set(1, 0);
10
+ function get(n) {
11
+ if (map.has(n)) {
12
+ return map.get(n);
13
+ }
14
+ const t = get(n % 2 === 0 ? n / 2 : n * 3 + 1) + 1;
15
+ map.set(n, t);
16
+ return t;
17
18
+
19
+ const arr = [];
20
+ for (let i = lo; i <= hi; i++) {
21
+ arr.push({
22
+ i,
23
+ d: get(i),
24
+ });
25
26
27
+ arr.sort((a, b) => {
28
+ if (a.d !== b.d) {
29
+ return a.d - b.d;
30
+ } else {
31
+ return a.i - b.i;
32
33
34
+ return arr[k - 1].i;
35
+};
0 commit comments