首页 > 其他分享 >1758. 生成交替二进制字符串的最少操作数 ---- 位运算、模拟

1758. 生成交替二进制字符串的最少操作数 ---- 位运算、模拟

时间:2022-11-29 14:13:42浏览次数:52  
标签:操作数 示例 int cnt ---- 交替 1758 字符串

给你一个仅由字符 '0' 和 '1' 组成的字符串 s 。一步操作中,你可以将任一 '0' 变成 '1' ,或者将 '1' 变成 '0' 。

交替字符串 定义为:如果字符串中不存在相邻两个字符相等的情况,那么该字符串就是交替字符串。例如,字符串 "010" 是交替字符串,而字符串 "0100" 不是。

返回使 s 变成 交替字符串 所需的 最少 操作数。

 

示例 1:

输入:s = "0100"
输出:1
解释:如果将最后一个字符变为 '1' ,s 就变成 "0101" ,即符合交替字符串定义。
示例 2:

输入:s = "10"
输出:0
解释:s 已经是交替字符串。
示例 3:

输入:s = "1111"
输出:2
解释:需要 2 步操作得到 "0101" 或 "1010" 。
 

提示:

1 <= s.length <= 104
s[i] 是 '0' 或 '1'

来源:力扣(LeetCode)
链接:https://leetcode.cn/problems/minimum-changes-to-make-alternating-binary-string
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

class Solution {
public:
    int minOperations(string s) {
        int n = s.length(), cnt = 0;
        for (int i = 0; i < n; ++i) cnt += (s[i] - '0') ^ (i & 1); // 奇数0 偶数1
        return min(cnt, n - cnt);
    }
};

 

标签:操作数,示例,int,cnt,----,交替,1758,字符串
From: https://www.cnblogs.com/slowlydance2me/p/16935223.html

相关文章

  • DRF 知识点收集
    drf序列化器中的read_only和write_only选项参考网址https://www.cnblogs.com/jx-zzc/p/16522675.htmlread_only:表示只读,不能进行修改,也不会存入db(校验过后)......
  • shell编程_判断固定字符串结尾
    用的方法#方法一、使用grep命令#!/bin/shstr="/path/to/foo.txt"#使用if语句ifecho"$str"|grep-q-E'\.txt$'then echo"true"else echo"false"fi#写成一行ec......
  • springboot的启动流程
           ......
  • 批量insert语句
    fromdatetimeimportdatetimefrommbutils.snowflakeimportID_Workerpath=r"C:\Users\xiaoan\Desktop\执行结果30.txt"withopen(path,mode='r',encoding="utf-8......
  • Java的性能优势与版本
    Java的性能和优势简单性Java没有指针运算,也不需要分配内存,语法基于C语言面向对象面向对象编程-万物皆对象可移植性跨平台移植,一次编写到处运行高性能即......
  • C#使用Windows Media Player播放音频文件
    利用WindowsMediaPlayer播放音频C#程序中:用WindowsMediaPlayer播放声音文件和视频文件a.工具箱->组件->(右键)选择项->COM组件->WindowsMediaPlayeb.把WindowsM......
  • tomcat-To-https
    Centos7配置Tomcat跳转Https前言:在网络安全盛行的时代下,有时业务为了安全需求要使用https协议,包括http、nginx、tomcat等,本篇简单分享一下tomcat跳转https配置。1、环......
  • 多Key切换项目二
    前言好久没更新博客了,最近一段时间休整了一下。本周进度我们将约束接口IMultipleKeyEntity改为基类MultipleKeyEntity并加入了统一的属性来规范默认库和SQLServer的实......
  • 【JAVA】Map之HashMap
    Map是一种键-值对(key-value)集合HashMap是一个散列表,它存储的内容是键值对(key-value)映射Map是一个接口,HashMap是一个Map的实现类(HashMap继承了AbstractMap类,实现了Ma......
  • 相交链表
    160.相交链表由题目要求可以知道,题目数据保证了不会出现环形注意,函数返回结果后,链表必须保持其原始结构。方法一:哈希集合利用哈希表的特性,不能放重复元素判断两个链......