第一题肯定不能暴力 假设有一种方案 把石头某一堆涂成了白色 剩下一堆涂成了黑色 我随便从白堆拿石头x 黑堆拿石头y 我们考察交换他们的颜色是不是更好 也就是说x[0]+y[1]和x[1]+y[0]的大小 如果x[0]+y[1]>x[1]+y[0] 就让他们交换 也就是说x[0]-x[1]>y[0]-y[1]的时候 我们一定要让x去涂成黑色 y涂成白色 因此我们直接对于每个石头x存入堆中将x[0]-x[1]作为排序依据 然后堆顶的元素涂成白色 直到白色够了 剩下的涂成黑色 复杂度nlogn

相关推荐

06-19 19:06
门头沟学院 Java
码农索隆:别去东软,真学不到东西,真事
点赞 评论 收藏
分享
认真搞学习:28小登的建议,投算法岗不要写什么物理竞赛,互联网+,多写点项目,用什么算法做了什么。还有本科算法是不可能的开发你这个也没有项目啊
点赞 评论 收藏
分享
牛客网
牛客网在线编程
牛客网题解
牛客企业服务