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);
    }
}
相关推荐
点光17 小时前
使用Sentinel作为Spring Boot应用限流组件
后端
不要秃头啊17 小时前
别再谈提效了:AI 时代的开发范式本质变了
前端·后端·程序员
有志18 小时前
Java 项目添加慢 SQL 查询工具实践
后端
山佳的山18 小时前
KingbaseES 共享锁(SHARE)与排他锁(EXCLUSIVE)详解及测试复现
后端
Leo89918 小时前
rust 从零单排 之 一战到底
后端
程序员清风19 小时前
程序员兼职必看:靠谱软件外包平台挑选指南与避坑清单!
java·后端·面试
鱼人20 小时前
MySQL 实战入门:从“增删改查”到“高效查询”的核心指南
后端
大鹏198820 小时前
告别 Session:Spring Boot 实现 JWT 无状态登录认证全攻略
后端
Java编程爱好者20 小时前
从 AQS 到 ReentrantLock:搞懂同步队列与条件队列,这一篇就够了
后端
鱼人20 小时前
Nginx 全能指南:从反向代理到负载均衡,一篇打通任督二脉
后端