全球热议:2021-11-19:[0,4,7] : 0表示这里石头没有颜色,如果变红代

来源: 腾讯云 时间:2022-11-26 06:21:24

2021-11-19:0,4,7 : 0表示这里石头没有颜色,如果变红代价是4,如果变蓝代价是7,1,X,X : 1表示这里石头已经是红,而且不能改颜色,所以后两个数X无意义,2,X,X : 2表示这里石头已经是蓝,而且不能改颜色,所以后两个数X无意义,颜色只可能是0、1、2,代价一定>=0,给你一批这样的小数组,要求最后必须所有石头都有颜色,且红色和蓝色一样多,返回最小代价。如果怎么都无法做到所有石头都有颜色、且红色和蓝色一样多,返回-1。来自小红书。

答案2021-11-19:


(资料图片)

1.排序。具体见代码。

2.统计无色,红色,蓝色个数。

3.如果红色或者蓝色过半,直接返回-1。

4.遍历,计算最小代价。具体见代码。

时间复杂度:排序的。

空间复杂度:排序的。

代码用golang编写。代码如下:

package mainimport (    "fmt"    "sort")func main() {    stones := [][]int{{0, 2, 4}, {0, 4, 1}}    ret := minCost(stones)    fmt.Println(ret)}func minCost(stones [][]int) int {    n := len(stones)    if (n & 1) != 0 {        return -1    }    sort.Slice(stones, func(i, j int) bool {        a := stones[i]        b := stones[j]        if a[0] == 0 && b[0] == 0 {            return b[1]-b[2]-a[1]+a[2] < 0        } else {            return a[0]-b[0] < 0        }    })    zero := 0    red := 0    blue := 0    cost := 0    for i := 0; i < n; i++ {        if stones[i][0] == 0 {            zero++            cost += stones[i][1]        } else if stones[i][0] == 1 {            red++        } else {            blue++        }    }    if red > (n>>1) || blue > (n>>1) {        return -1    }    blue = zero - ((n >> 1) - red)    for i := 0; i < blue; i++ {        cost += stones[i][2] - stones[i][1]    }    return cost}

执行结果如下:

图片

左神java代码

上一篇:

下一篇:

X 关闭

热门推荐

喜看身边变化|我爱​广宁街道

2022-11-25   北京石景山

北京最新疫情防控通报!​

2022-11-25   光明日报

java面试强基(4)

2022-11-25   腾讯云

java面试强基(3)2通讯

2022-11-25   腾讯云

【独家】“静”下来!为了早日“动”起来!

2022-11-25   北京第二外国语学院

掌握二手车估价方法,再也不怕花冤枉钱了

2022-11-25   中国产业经济信息网

不用囤菜,管够!

2022-11-25   京彩台湾

wxPython绘图API4每日播报

2022-11-25   腾讯云

瓦文旗帜报

2022-11-25   万能网

经典辣妹胜利

2022-11-25   万能网

线上线下开展消防安全检查1环球时讯

2022-11-25   北京青年报官网

宝色股份:构建发展新格局 彰显国企新担当

2022-11-25   中国产业经济信息网

历经21年三代更新 全新欧蓝德正式下线

2022-11-25   中国产业经济信息网

深圳1996-李百军作品4天天速讯

2022-11-25   凡是摄影

tinymce 如何实现动态国际化

2022-11-25   腾讯云

团团农生活(团靓网)

2022-11-25   万能网

共商共建共治共享让车辆“归位”

2022-11-25   北京青年报官网

GlusterFS简介

2022-11-24   腾讯云

北京如何成立一家研发中心

2022-11-24   李娜工商企业管理

中欣卡回收

2022-11-24   陶鑫爱生活

k755次列车时刻表(k755)

2022-11-24   万能网

实用 NFT:数字资产的未来

2022-11-24   腾讯云

利好!2023辽宁省考大幅扩招?

2022-11-24   辽宁中公教育

全球通讯!NFT的功能价值

2022-11-24   腾讯云

北京十大刑事律师事务所咨询

2022-11-24   近日安好

北京市海淀医院近期就医须知3快消息

2022-11-24   北京市海淀医院

北京中欣卡回收教程

2022-11-24   淘文者

北京永辉超市生鲜量足价稳1全球速递

2022-11-24   北京青年报官网

北京知名的拆迁律师事务所推荐

2022-11-24   小雨一路行

定光佛(定光)

2022-11-24   万能网

谈恋爱炸了

2022-11-24   万能网

手抖的影响32环球滚动

2022-11-24   雪山上的紫鸢花

Copyright   2015-2022 中国行业信息网版权所有  备案号:   联系邮箱:29 59 11 57 8@qq.com