-
Notifications
You must be signed in to change notification settings - Fork 0
/
app.js
103 lines (91 loc) · 2.09 KB
/
app.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
// require('./index.js')
// const a = undefined
// console.log(a)
// const rec_opt = (arr, i) => {
// if (i === 0) return arr[0]
// if (i === 1) return Math.max(arr[0], arr[1])
// const a = arr[i] + rec_opt(arr, i - 2)
// const b = rec_opt(arr, i - 1)
// return Math.max(a, b)
// }
// const dp_opt = (arr) => {
// const opt = new Array(arr.length).fill(0)
// opt[0] = arr[0]
// opt[1] = Math.max(arr[0], arr[1])
// for (let i = 2; i < arr.length; i++) {
// const a = arr[i] + opt[i - 2]
// const b = opt[i - 1]
// opt[i] = Math.max(a, b)
// }
// return opt[arr.length - 1]
// }
// console.log(dp_opt([1, 2, 4, 1, 7, 8, 3]))
// const dp_opt = (n) => {
// const opt = new Array(n + 1).fill(1)
// for (let i = 3; i <= n; i++) {
// for (let j = 1; j < i; j++) {
// const a = j * opt[i - j]
// const b = opt[i]
// const c = j * (i - j)
// opt[i] = Math.max(a, b, c)
// }
// }
// return opt[n]
// }
// console.log(dp_opt(8))
// const allAreas = [
// '北京',
// '上海',
// '天津',
// '广州',
// '深圳',
// '成都',
// '杭州',
// '大连',
// ]
// const selects = [
// ['北京', '上海', '天津'],
// ['广州', '北京'],
// ]
// const calculate = (maxKey) => {
// return maxKey
// }
// const gr = () => {
// const selections = []
// while (allAreas.length) {
// let maxKey
// for (let i = 0; i < 5; i++) {
// const temp = calculate(maxKey)
// maxKey = temp > maxKey ? i : maxKey
// }
// selections.push(maxKey)
// // allAreas删掉
// }
// }
// const getNum = (start, end) => {
// let rel = []
// for (let i = start; i < end; i++) {
// rel.push(i)
// }
// return rel
// }
// const findContinuousSequence = (target) => {
// let a = 1,
// b = 2,
// sum = a + b
// const res = []
// while (a !== b && b <= target) {
// if (sum === target) {
// res.push(getNum(a, b))
// b++
// sum += b
// } else if (sum < target) {
// b++
// sum += b
// } else {
// sum -= a
// a++
// }
// }
// return res
// }