首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >2022-01-24:K 距离间隔重排字符串。 给你一个非空的字符

2022-01-24:K 距离间隔重排字符串。 给你一个非空的字符

原创
作者头像
福大大架构师每日一题
发布于 2022-01-24 15:05:47
发布于 2022-01-24 15:05:47
2460
举报

2022-01-24:K 距离间隔重排字符串。

给你一个非空的字符串 s 和一个整数 k,你要将这个字符串中的字母进行重新排列,使得重排后的字符串中相同字母的位置间隔距离至少为 k。

所有输入的字符串都由小写字母组成,如果找不到距离至少为 k 的重排结果,请返回一个空字符串 ""。

输入: s = "aabbcc", k = 3。

输出: "abcabc" 。

解释: 相同的字母在新的字符串中间隔至少 3 个单位距离。

力扣358。

答案2022-01-24:

时间紧。具体见代码。

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

代码语言:go
AI代码解释
复制
package main

import (
    "fmt"
    "sort"
)

func main() {
    ret := rearrangeString("aabbcc", 3)
    fmt.Println(ret)
}

func rearrangeString(s string, k int) string {
    if len(s) < k {
        return s
    }
    str := []byte(s)
    cnts := make([][]int, 256)
    for i := 0; i < 256; i++ {
        cnts[i] = []int{i, 0}
    }
    maxCount := 0
    for _, task := range str {
        cnts[task][1]++
        maxCount = getMax(maxCount, cnts[task][1])
    }
    maxKinds := 0
    for task := 0; task < 256; task++ {
        if cnts[task][1] == maxCount {
            maxKinds++
        }
    }
    N := len(str)
    if !isValid(N, k, maxCount, maxKinds) {
        return ""
    }
    ans := make([]string, 0)
    for i := 0; i < maxCount; i++ {
        ans = append(ans, "")
    }
    sort.Slice(cnts, func(i, j int) bool {
        return cnts[j][1] <= cnts[i][1]
    })
    i := 0
    for ; i < 256 && cnts[i][1] == maxCount; i++ {
        for j := 0; j < maxCount; j++ {
            ans[j] += fmt.Sprintf("%c", cnts[i][0])
        }
    }
    out := 0
    for ; i < 256; i++ {
        for j := 0; j < cnts[i][1]; j++ {
            ans[out] += fmt.Sprintf("%c", cnts[i][0])
            out = twoSelectOne(out == len(ans)-2, 0, out+1)
        }
    }
    builder := ""
    for _, b := range ans {
        builder += b
    }
    return builder
}

func isValid(N, k, maxCount, maxKinds int) bool {
    restTasks := N - maxKinds
    spaces := k * (maxCount - 1)
    return spaces-restTasks <= 0
}

func getMax(a, b int) int {
    if a > b {
        return a
    } else {
        return b
    }
}

func twoSelectOne(c bool, a int, b int) int {
    if c {
        return a
    } else {
        return b
    }
}

执行结果如下:

图片
图片

左神java代码

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
暂无评论
推荐阅读
英特尔最新研究:从热图像中进行人脸识别
热图像是否足够详细,可以使AI模型识别人的面部特征?这就是英特尔研究人员在最近的第12届国际人类系统交互会议上提出的一个问题。他们研究了在可见光数据上训练的模型性能,该模型随后在热图像上进行了训练。
AiTechYun
2020/01/16
1.1K1
英特尔最新研究:从热图像中进行人脸识别
AI说长这样挣得多!Nature力证科学看相,3万张自拍揭露面相-性格关系,碾压算命先生
在中国,面相是阴阳五行学说的重要分支,古人认为,只要把握规律就可从面部特征中推算出一个人的命运走势和富贵贫贱。
大数据文摘
2020/06/01
7780
以后可以「刷牙」支付了?DeepTeeth牙齿生物识别系统识别率高达100%!
不是说抽烟喝酒多了牙齿变黄这类的变化。而是说,相较于其他类型的面部整容或重建手术,对牙齿进行的手术干预频率会更高。
新智元
2021/08/25
5240
Astronomaly:利用 CNN 和主动学习识别 400 万张星系图像中的异常
星系中的异常现象是我们了解宇宙的关键。然而,随着天文观测技术的发展,天文数据正以指数级别增长,超出了天文工作者的分析能力。
HyperAI超神经
2023/10/09
2820
Astronomaly:利用 CNN 和主动学习识别 400 万张星系图像中的异常
图像也能做情感迁移?罗切斯特大学团队提出计算机视觉新任务
计算机视觉领域中有很多任务,如目标检测、图像转换、风格迁移等,但你听说过「图像情感迁移」吗?
机器之心
2020/11/13
3950
图像也能做情感迁移?罗切斯特大学团队提出计算机视觉新任务
DEAP:使用生理信号进行情绪分析的数据库(一、背景介绍与刺激选择)
本篇文章主要介绍了用于情绪分析的生理信号数据库DEAP的简介,包括创建该数据库的目的、实验的设计、数据的采集以及实验的分析等。
脑机接口社区
2022/09/22
1.8K0
DEAP:使用生理信号进行情绪分析的数据库(一、背景介绍与刺激选择)
斯坦福学生攻破两个约会软件!用GAN模型「女扮男装」骗过人脸识别系统
---- 点击上方↑↑↑“OpenCV学堂”关注我来源:公众号 新智元 授权 【导读】人脸识别技术最近又有新的破解方式!一位斯坦福的学生使用GAN模型生成了几张自己的图片,轻松攻破两个约会软件,最离谱的是「女扮男装」都识别不出来。 真的有人能模仿你的脸,还绕开了人脸识别系统! 最近斯坦福大学的研究人员在arxiv上发布了一篇论文,虽说是斯坦福CS236G的课程作业,不过论文中提出了一个非常有趣的思路,用对抗生成网络GAN生成一个面部图像来模仿目标人脸,看看人脸识别系统能否正确验证。 因为人脸的关键特征信
OpenCV学堂
2022/04/12
7590
斯坦福学生攻破两个约会软件!用GAN模型「女扮男装」骗过人脸识别系统
Facebook最新P图AI欺骗性超强,自适应换装调表情,还能隔空加入群聊!
现在的互联网信息呈爆炸式增长,而图片和视频表达的东西更丰富更直接,所以Facebook一直在加码图片和视觉AI领域。
新智元
2020/06/01
9570
加强版CycleGAN!贾佳亚等提出卡通图与真实人脸转换模型,看女神突破次元壁长啥样
港中文、哈工大和腾讯优图的一篇最新研究,可以将人脸照片转化成如同手绘版的卡通图,甚至还能反向转换,将二次元的卡通图像,转换成现实中可能的样子。
量子位
2019/07/15
2.1K0
加强版CycleGAN!贾佳亚等提出卡通图与真实人脸转换模型,看女神突破次元壁长啥样
独家 | 利用AI进行高精度图像编辑︰EditGAN(附链接)
作者︰Nathan Horrocks 翻译︰Gabriel Ng校对:张睿毅 本文约3300字,建议阅读5分钟本文为大家介绍了如何利用AI进行高精度图像编辑。 处理猫咪、汽车、甚至是古董画的照片,对于这项工作的需求,在以前从未能像现在一样容易被满足,这归功于一个生成对抗网络 (GAN) 模型,叫做EditGAN。这项工作出自NVIDIA、多伦多大学和麻省理工学院的研究员们,部署自 DatasetGAN (一个人工智能视觉模型,训练只须用少如 16张人工注释的图像,性能虽然和其他方法一样高效,但其他方法需要
数据派THU
2022/03/30
6870
独家 | 为什么在CV(视觉识别)领域,Transformers正在缓慢逐步替代CNN?
作者:Pranoy Radhakrishnan 翻译:wwl校对:王可汗 本文约3000字,建议阅读10分钟本文讨论了Transformer模型应用在计算机视觉领域中和CNN的比较。 在认识Transformers之前,思考一下,为什么已经有了MLP、CNN、RNN,研究者还会对Transformers产生研究的兴趣。 Transformers起初是用于语言翻译。相比于循环神经网络(比如LSTM),Transformers支持模拟输入序列元素中的长依赖,并且支持并行处理序列。 Transformers利用
数据派THU
2022/03/04
9510
StarLKNet | 利用大核卷积和 Mixup 增强的深度学习架构提升识别准确性!
在现代社会,个人信息安全问题越来越受到关注,因为误识别可能对个人的财产安全和隐私造成灾难性的影响。基于密码和身份证等 Token 的认证方法存在被遗忘或被盗的风险。在过去的几十年里,基于生理(如面部[18],指纹[2]和静脉[38, 39])或行为(如步态[3]和眼动[30])特征的个体识别的生物识别技术研究非常广泛。在应用中最常见的生物识别特征是面部和指纹。然而,这些外部特征可能受到潜在的伪造攻击[23]。
集智书童公众号
2024/06/11
4620
StarLKNet |  利用大核卷积和 Mixup 增强的深度学习架构提升识别准确性!
清华博士用几个小灯泡骗过红外识别,首次让红外检测性能直降34% |AAAI2021
---- 新智元报道   作者:朱小佩 编辑:好困 【新智元导读】众所周知,打印一张图揣身上就能骗过图像识别,那你知道如何才能骗过红外识别么? 在疫情期间,红外行人识别系统被广泛应用。 这得益于热红外识别的系统的两个重要的优势: 1. 对于温度敏感,红外图像的成像利用了物体的热辐射,所以可以反映出物体的温度,这一特性对于人体的非接触式测温具有重要的应用。 2. 红外成像具有一定的「透视」特性,即使人体被一些衣物遮挡,但是热辐射依然可以透过衣物被接收器感知到,所以可以透过遮挡进行成像。 尽管目前红外行
新智元
2023/05/22
3650
清华博士用几个小灯泡骗过红外识别,首次让红外检测性能直降34%
|AAAI2021
人脸识别安全吗?朋友圈里有多少自拍,别人就有多少钥匙
「打开手机的前置摄像头,用美图秀秀美美地拍上一张照片,然后把自拍发布到微信朋友圈并等待好友们亮起大拇指。」
IT阅读排行榜
2018/08/15
1.6K0
人脸识别安全吗?朋友圈里有多少自拍,别人就有多少钥匙
每日学术速递4.17(全新改版)
1.3DMambaComplete: Exploring Structured State Space Model for Point Cloud Completion
AiCharm
2024/04/17
2760
每日学术速递4.17(全新改版)
【技术综述】一文道尽“人脸数据集”
这一次我将从人脸检测,关键点检测,人脸识别,人脸表情,人脸年龄,人脸姿态等几个方向整理出人脸领域有用的数据集清单,不全也有9成全吧。
用户1508658
2019/07/26
2.2K0
清华出品 | 人脸识别最全知识图谱
自20世纪下半叶,计算机视觉技术逐渐地发展壮大。同时,伴随着数字图像相关的软硬件技术在人们生活中的广泛使用,数字图像已经成为当代社会信息来源的重要构成因素,各种图像处理与分析的需求和应用也不断促使该技术的革新。计算机视觉技术的应用十分广泛。数字图像检索管理、医学影像分析、智能安检、人机交互等领域都有计算机视觉技术的涉足。该技术是人工智能技术的重要组成部分,也是当今计算机科学研究的前沿领域。经过近年的不断发展,已逐步形成一套以数字信号处理技术。计算机图形图像、信息论和语义学相互结合的综合性技术,并具有较强的边缘性和学科交叉性。其中,人脸检测与识别当前图像处理、模式识别和计算机视觉内的一个热门研究课题, 也是目前生物特征识别中最受人们关注的一个分支。
数据派THU
2018/12/12
1.2K0
清华出品 | 人脸识别最全知识图谱
行人、车辆、动物等ReID最新综述!武大等全面总结Transformer方法 | IJCV 2024
目标重识别(Object Re-identification,简称Re-ID)旨在跨不同时间和场景识别特定对象。
新智元
2025/02/15
1720
行人、车辆、动物等ReID最新综述!武大等全面总结Transformer方法 | IJCV 2024
虹膜识别升级:AI系统辨别虹膜主人是否存活
这是一个来自科幻小说的情节:坏人杀死一个不幸的安保人员,并用他的眼球通过虹膜扫描仪,愚弄它解除安全系统。研究表明,死亡后几天的人的眼睛仍可用于生物识别。波兰华沙理工大学的研究人员能够找到一种方法,可能会避免这种情况。
AiTechYun
2018/08/06
5390
CVPR 2018:剑桥大学等研发“暴力行为”检测系统,用无人机精准识别人群暴力
新智元报道 来源:theregister.co.uk 编辑:肖琴 【新智元导读】来自英国剑桥大学、印度国家技术研究院和印度科学理工学院的研究人员研发了一种利用无人机的“暴力行为”检测系统,能够识别
新智元
2018/06/22
2.3K3
推荐阅读
英特尔最新研究:从热图像中进行人脸识别
1.1K1
AI说长这样挣得多!Nature力证科学看相,3万张自拍揭露面相-性格关系,碾压算命先生
7780
以后可以「刷牙」支付了?DeepTeeth牙齿生物识别系统识别率高达100%!
5240
Astronomaly:利用 CNN 和主动学习识别 400 万张星系图像中的异常
2820
图像也能做情感迁移?罗切斯特大学团队提出计算机视觉新任务
3950
DEAP:使用生理信号进行情绪分析的数据库(一、背景介绍与刺激选择)
1.8K0
斯坦福学生攻破两个约会软件!用GAN模型「女扮男装」骗过人脸识别系统
7590
Facebook最新P图AI欺骗性超强,自适应换装调表情,还能隔空加入群聊!
9570
加强版CycleGAN!贾佳亚等提出卡通图与真实人脸转换模型,看女神突破次元壁长啥样
2.1K0
独家 | 利用AI进行高精度图像编辑︰EditGAN(附链接)
6870
独家 | 为什么在CV(视觉识别)领域,Transformers正在缓慢逐步替代CNN?
9510
StarLKNet | 利用大核卷积和 Mixup 增强的深度学习架构提升识别准确性!
4620
清华博士用几个小灯泡骗过红外识别,首次让红外检测性能直降34% |AAAI2021
3650
人脸识别安全吗?朋友圈里有多少自拍,别人就有多少钥匙
1.6K0
每日学术速递4.17(全新改版)
2760
【技术综述】一文道尽“人脸数据集”
2.2K0
清华出品 | 人脸识别最全知识图谱
1.2K0
行人、车辆、动物等ReID最新综述!武大等全面总结Transformer方法 | IJCV 2024
1720
虹膜识别升级:AI系统辨别虹膜主人是否存活
5390
CVPR 2018:剑桥大学等研发“暴力行为”检测系统,用无人机精准识别人群暴力
2.3K3
相关推荐
英特尔最新研究:从热图像中进行人脸识别
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档