尧图建网站 尧图建网站 YAOTU WEB BUILD 免费咨询
ARTICLE DETAIL

资讯详情

深耕网站建设与建站编程的一线实战洞察。

leetcode 1723. Find Minimum Time to Finish All Jobs

leetcode 1723. Find Minimum Time to Finish All Jobs Problem: 1723. 完成所有工作的最短时间挺难的看了豆包的解析的不区分工人所以arr[i]0就可以break需要剪枝才行的Codeclass Solution { public: vectorint arr; int n, mxx INT_MAX; void dfs(vectorint jobs, int index, int k) { if(index n) { mxx min(mxx, *max_element(arr.begin(), arr.end())); return; } for(int i 0; i k; i) { if(arr[i] jobs[index] mxx) continue; arr[i] jobs[index]; dfs(jobs, index 1, k); arr[i] - jobs[index]; if(arr[i] 0) break; } } int minimumTimeRequired(vectorint jobs, int k) { n jobs.size(); arr.assign(k, 0); sort(jobs.begin(), jobs.end(), greaterint()); if( n k ) { return jobs[0]; } arr[0] jobs[0]; dfs(jobs, 1, k); return mxx; } };
返回列表