各位牛友,一道笔试题求解
一个人要做订单,从0时间到1e9时间开始做,每个订单花费一个时间单位
有n个订单,每个订单有个超时时间D和价值P
1 <= n <= 1e5
1 <= D < 1e9
1 <= P < 1e9
求能得到的最大价值
#笔试##算法#
有n个订单,每个订单有个超时时间D和价值P
1 <= n <= 1e5
1 <= D < 1e9
1 <= P < 1e9
求能得到的最大价值
#笔试##算法#
全部评论
经典反悔贪心
按超时时间从小到大排序,然后按价值维护一个最小堆,扫描排序后的订单,如果堆里面还有空间(即还能放下当前订单)就直接扔进去,否则比较堆顶订单跟当前订单的价值,O(nlogn)。口胡的不一定对
https://www.cnblogs.com/RioTian/p/14513549.html
相关推荐
书海为家:我来给一点点小建议,因为毕竟还在学校不像工作几年的老鸟有丰富的项目经验,面试官在面试在校生的时候更关注咱们同学的做事逻辑和思路,所以最好在简历中描述下自己做过项目的完整过程,比如需求怎么来的,你对需求的解读,你想到的解决办法,遇到困难如何找人求助,最终项目做成了什么程度,你从中收获了哪些技能,你有什么感悟。 点赞 评论 收藏
分享

查看17道真题和解析