获赞
122
粉丝
22
关注
2
看过 TA
127
西安电子科技大学
2022
后端
IP属地:陕西
暂未填写个人简介
私信
关注
2021-10-13 16:32
已编辑
华为_运营商_软件开发工程师
小红书 投递:20210812 官网+内推码 笔试:20210821  魔法师过河问题:河里有石头,黑的,白的,没颜色的;魔法师要想过河,必须黑色白色数量一样才可以;没颜色的需要消耗能量涂色成黑/白色,不同石头涂颜色需要消耗不同的能量;如果魔法师可以过河,输出消耗的最少能量;不可以的话,输出-1。 输入样例:10个石头,随后有10行数据,每一行开始第一个数字:1表示白色,2表示黑色,0表示没颜色,0后跟的两个数分别表示变白色和变黑色需要消耗的能量。 思路:计数1和2分别记为p和q,当两个数量任一大于n/2 或者 n不是偶数,就无法保证黑白数量一致,无法过河。然后将0的存到二维数组中,从第一维选...
牛客31683993...:第一题肯定不能暴力 假设有一种方案 把石头某一堆涂成了白色 剩下一堆涂成了黑色 我随便从白堆拿石头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
投递小红书等公司9个岗位
0 点赞 评论 收藏
分享
0 点赞 评论 收藏
分享

创作者周榜

更多
关注他的用户也关注了:
牛客网
牛客网在线编程
牛客网题解
牛客企业服务