leetcode算法题--生成特殊数字的最少操作

原题链接:https://leetcode.cn/problems/minimum-operations-to-make-a-special-number/description/

感觉还是比较难想到的。。

go 复制代码
func minimumOperations(num string) int {
    res := len(num)
    if strings.Contains(num, "0") {
        res-- 
    }
    f := func(tail string) {
        i := strings.LastIndexByte(num, tail[1]) 
        if i < 0 {
            return
        }
        i = strings.LastIndexByte(num[:i], tail[0])
        if i < 0 {
            return
        }
        res = min(res, len(num)-i-2)
    }
    f("00")
    f("25")
    f("50")
    f("75")
    return res
}

func min(a, b int) int {
    if a < b {
        return a
    }
    return b
}
相关推荐
程序员阿鹏6 分钟前
为什么MySQL InnoDB选择B+树?
数据结构·数据库·b树·sql·mysql·算法·缓存
AI 思录28 分钟前
Prompt 事故档案(八):日常表达被标为“待校准”,AI 的爹味语法从哪里来
大数据·人工智能·算法·prompt·用户体验·ai合规
月光船幽幽33 分钟前
跨范式映射的稳定接口设计
人工智能·python·算法
2601_965742222 小时前
全媒体运营与短视频代运营,两者有什么区别?
大数据·数据结构·人工智能·算法·ai·媒体
wordbaby3 小时前
混合检索:两全其美的艺术
人工智能·算法
彧azz3 小时前
数据结构:关于图的学习
c语言·数据结构·笔记·学习·算法
热心网友俣先生3 小时前
A题-药材的烘干问题-题意逐句翻译
算法·数学建模
2601_960356383 小时前
2026秋招运营分析师能力模型:SQL、指标体系、AIGC与业务分析
算法
hetao17338373 小时前
校内场-提高组 ZYZSC-S-Round 4
c++·算法