关注
背包容量第一题二分做出来了
public long Solve(int n, int m, int[] weights) {
// write code here
int max = -1;
long sum = 0;
for (int i = 0; i < weights.length; i++) {
if(weights[i]>max){
max = weights[i];
}
sum += weights[i];
}
long start = Math.max(max,sum/m);
long end = sum;
long mid = (start+end)/2;
while(start<end){
mid = (start+end)/2;
if(canHave(m,n,weights,mid)){
end = mid;
}else{
start = mid + 1;mid = mid + 1;
}}
return mid;
}
private boolean canHave(int m,int n,int[] weights,long k){
int leftNum = m-1;long leftWeight = k;
for (int j = 0; j < weights.length; j++) {
if(leftWeight>= weights[j]){
leftWeight -= weights[j];
}else{
leftNum--;leftWeight = k;leftWeight -= weights[j];
}
}
if(leftNum>=0){return true;}
return false;
}
查看原帖
2 评论
相关推荐
查看14道真题和解析 点赞 评论 收藏
分享
King987:你有实习经历,但是写的也太简单了,这肯定是不行的,你主要要包装实习经历这一块,看我的作品,你自己包装一下吧,或者发我,我给你出一期作品
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 给工作过的公司写一条大众点评,你会怎么写? #
1169次浏览 23人参与
# 牛油的搬砖plog #
189290次浏览 1272人参与
# 厦门银行科技岗值不值得投 #
16582次浏览 404人参与
# 烂工作和没工作哪个更痛苦? #
1816次浏览 46人参与
# 发工资后,你做的第一件事是什么 #
100316次浏览 336人参与
# AI替代不了什么? #
1703次浏览 40人参与
# 一人分享一道面试手撕题 #
114163次浏览 2878人参与
# 学历VS实习,哪个更重要? #
10389次浏览 159人参与
# 工作上你捅过哪些篓子? #
69271次浏览 334人参与
# 春招至今,你收到几个面试了? #
4298次浏览 45人参与
# 产品人求职现状 #
361433次浏览 2603人参与
# 谈薪时HR压价该怎么应对 #
294092次浏览 3361人参与
# 机械校招之路总结 #
120290次浏览 2083人参与
# 面试紧张时你会有什么表现? #
35775次浏览 243人参与
# uu们,春招你还来吗? #
69769次浏览 932人参与
# 刚工作的你,踩过哪些坑? #
33356次浏览 278人参与
# 面试中,你被问过哪些奇葩问题? #
99503次浏览 1431人参与
# 非技术投递记录 #
716842次浏览 6930人参与
# 机械人与华为的爱恨情仇 #
155255次浏览 1047人参与
# 你的实习什么时候入职 #
368229次浏览 2368人参与
# 牛友的志愿填报指南 #
63934次浏览 492人参与

