力扣 --2712. 使所有字符相等的最小成本

思路

有两个操作,全部将左边的刷成一个值,或者将右边的全部刷成一个值,得到的启发是一定需要从两端进行操作,可以模拟一下例子2:

c 复制代码
"010101" -> "110101" 操作1次 -> "110100" 操作1次 -> "000100" 操作2次
最后变为"111111" 操作5次
总计9次

也就是我们每一次都比较左右两端哪一个操作次数少,那么我们就操作他,全部刷为一个值,最后全部判断一遍就得到了最后的结果。

python 复制代码
class Solution:
    def minimumCost(self, s: str) -> int:
        n = len(s)
        i = 0
        j = n - 1
        res = 0
        while i < j:
            while i < j and s[i] == s[i + 1]:
                i += 1
            if i >= j: break
            while i < j and s[j] == s[j - 1]:
                j -= 1
            if i + 1 < n - j:
                res += i + 1
                i += 1
            else:
                res += n - j
                j -= 1
        return res
相关推荐
S01d13r12 分钟前
LeetCode 解题思路 45(分割等和子集、最长有效括号)
算法·leetcode·职场和发展
星川皆无恙37 分钟前
大数据产品销售数据分析:基于Python机器学习产品销售数据爬虫可视化分析预测系统设计与实现
大数据·运维·爬虫·python·机器学习·数据分析·系统架构
shenyan~1 小时前
关于Python:9. 深入理解Python运行机制
开发语言·python
白熊1881 小时前
【计算机视觉】pyrealsense2:Intel RealSense 深度相机的 Python 接口实战指南
python·数码相机·计算机视觉
殇淋狱陌1 小时前
【Python】常用命令提示符
开发语言·python·虚拟环境
理想奋斗中2 小时前
【LeetCode Hot100 | 每日刷题】二叉树的层序遍历
算法·leetcode·bfs
阳洞洞2 小时前
leetcode 24. 两两交换链表中的节点
数据结构·leetcode·链表
高效匠人2 小时前
文章五《卷积神经网络(CNN)与图像处理》
图像处理·人工智能·python·cnn
zhanzhan01093 小时前
ubantu安装CUDA
人工智能·python·深度学习
Draina3 小时前
爬虫技术-利用Python和Selenium批量下载动态渲染网页中的标准文本文件
爬虫·python·selenium·网络爬虫