We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent 095007b commit 6e6292dCopy full SHA for 6e6292d
1723-find-minimum-time-to-finish-all-jobs.js
@@ -1,3 +1,37 @@
1
+/**
2
+ * @param {number[]} jobs
3
+ * @param {number} k
4
+ * @return {number}
5
+ */
6
+const minimumTimeRequired = function(jobs, k) {
7
+ const workers = Array(k).fill(0)
8
+ let res = Infinity
9
+ const n = jobs.length
10
+
11
+ dfs(0)
12
13
+ return res
14
15
+ function dfs(idx) {
16
+ if(idx === n) {
17
+ res = Math.min(res, Math.max(...workers))
18
+ return
19
+ }
20
+ const visited = new Set()
21
+ const e = jobs[idx]
22
+ for(let i = 0; i < k; i++) {
23
+ if(visited.has(workers[i])) continue
24
+ if(workers[i] + e >= res) continue
25
+ visited.add(workers[i])
26
+ workers[i] += e
27
+ dfs(idx + 1)
28
+ workers[i] -= e
29
30
31
+};
32
33
+// another
34
35
/**
36
* @param {number[]} jobs
37
* @param {number} k
0 commit comments