9.14百度笔试 2道编程题

太难了。想问做游戏积分题咋做的啊,我先按截止时间排序再动归,只能过0.37#百度#
全部评论
大佬收到面试通知没?
点赞 回复 分享
发布于 2021-09-18 13:09
40% 91%剩下9%想不出来😥
点赞 回复 分享
发布于 2021-09-15 00:23
应该是贪心? 动规我是没过,不知道是不是写错了
点赞 回复 分享
发布于 2021-09-14 22:55
用了最大堆和最小堆,交卷了才想起来哪里错了。有大佬看看这样改对吗。 vector<pair<int, int>> arr; sort(arr.begin(), arr.end()); long long max_score = 0; int l = 10; int r = 20; int i = 0; priority_queue<int, vector<int>, greater<int>> result; while(i < N) {     priority_queue<int, vector<int>, less<int>> temp;     while(i < N && arr[i].first >= l && arr[i].first < r)     {         temp.push(arr[i].second);         i++;     }     if (!temp.empty())     {         int count = l / 10 - result.size();         while(count > 0 && !temp.empty()){         result.push(temp.top());         temp.pop();         count--;         }     }     while(temp.empty() == false && temp.top() > result.top())     {         result.pop();         result.push(temp.top());         temp.pop();     }     l += 10;     r += 10; } while(!result.empty()) {     max_score += result.top();     result.pop(); } cout << max_score << endl;
点赞 回复 分享
发布于 2021-09-14 21:43
算法岗笔试吗?
点赞 回复 分享
发布于 2021-09-14 21:21
贪心
点赞 回复 分享
发布于 2021-09-14 21:21
直接用最大时间//10,得到时间段,然后对积分进行排序,获得对应时间段数量里的最大积分,哈哈,45%
点赞 回复 分享
发布于 2021-09-14 21:12
所以大哥做出来多少。
点赞 回复 分享
发布于 2021-09-14 21:12

相关推荐

2025-12-28 16:32
重庆邮电大学 Java
程序员花海:1.技能放最后,来面试默认你都会,技能没啥用 2.实习写的看起来没啥含金量,多读读部门文档,包装下 接LLM这个没含金量 也不要用重构这种 不会给实习生做的 3.抽奖这个还是Demo项目,实际在公司里面要考虑策略,满减,触发点,触发规则 库存 之类的,不是这个项目这么简单 4.教育背景提前,格式为 教育背景 实习 项目 技能 自我评价
简历被挂麻了,求建议
点赞 评论 收藏
分享
评论
点赞
1
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务