Acwing4996填充

题目

有一个长度为 n 的 01 串,其中有一些位置标记为 ?,这些位置上可以任意填充 0 或者 1,请问如何填充这些位置使得这个 01 串中出现互不重叠的 0011 子串最多,输出子串个数。

输入格式

输入一行包含一个字符串。

输出格式

输出一行包含一个整数表示答案。

数据范围

对于所有评测用例,1≤n≤106

输入样例:

yaml 复制代码
1110?0

输出样例:

复制代码
2

样例解释

如果在问号处填 0,则最多出现一个 00 和一个 11111000

代码与思路

这道题没什么需要讲的特别思路,就是要想到前后字符相等

java 复制代码
import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        String s = in.next();
        int res = 0;
        for (int i = 0;i < s.length() - 1;i ++) {
            char a = s.charAt(i), b = s.charAt(i + 1);
            if (a == b || a == '?' || b == '?') {
                res ++;
                i++;
            }
        }
        System.out.println(res);
    }
}
相关推荐
oliver_sys_log5 分钟前
绕过 Yearning 查询体验限制:我做了一个 DataGrip 只读 SQL 代理
后端·mysql
水深火乐6 分钟前
golang-jwt v5 入门
后端
carson9558 分钟前
基于springboot和vue的文本文件上传下载在线编辑功能
后端
n8n14 分钟前
Spring AI 提示词工程进阶:System / User / Assistant 角色、Prompt Template 动态拼装与多角色人设切换
后端
步行cgn25 分钟前
Spring Boot 主入口类上的 @Enable 和 @Scan 注解详解
java·spring boot·后端
Lyra_Infra1 小时前
云效主机部署场景下 Python 服务生命周期问题复盘
后端·python
程序员cxuan1 小时前
GPT images 2.5 一手实测,这也太颠了。。。
后端·程序员
山岚的运维笔记2 小时前
mysql 专业笔记 -- 第 17 章:连接:连接三个具有相同名称 ID 的表
运维·数据库·笔记·后端·学习·mysql·dba
遨翔在知识的海洋里2 小时前
nest(3)- filter和Interceptor
后端
挽安6212 小时前
若依微服务 Nacos 2.x 控制台配置列表为空?一个 tenant_id 字段引发的血案
后端