C++窗口问题

最大连续1的个数

cpp 复制代码
#include<bits/stdc++.h>
using namespace std;
int n,m;
char a[10010]={0};
int main()
{
	cin>>n>>m;
	for(int i=0;i<n;i++)
	{
		cin>>a[i];
	}
	int j=0;
	int ma=-1;
	for(int i=0;i<=n;i++)
	{
		if(a[i]=='0'&&m>0)
		{
			m--;
		}
		else if(a[i]=='0'&&m==0)
		{
			while(a[j]=='1')
			{
				j++;
			}
			j++;
		}
		if(i==n)ma=max(ma,i-j);
		else ma=max(ma,i-j+1);
	}
	cout<<ma;
	
	
	return 0;
}
相关推荐
橙露5 分钟前
Python 对接 API:自动化拉取、清洗、入库一站式教程
开发语言·python·自动化
Omigeq11 分钟前
1.4 - 曲线生成轨迹优化算法(以BSpline和ReedsShepp为例) - Python运动规划库教程(Python Motion Planning)
开发语言·人工智能·python·算法·机器人
2301_8084143812 分钟前
自动化测试的实施
开发语言·python
郭涤生14 分钟前
C++模板元编程理论基础简介
c++
CheerWWW29 分钟前
C++学习笔记——栈内存与堆内存、宏、auto、std::array
c++·笔记·学习
波波00730 分钟前
写出稳定C#系统的关键:不可变性思想解析
开发语言·c#·wpf
网络工程小王33 分钟前
【大模型(LLM)的业务开发】学习笔记
人工智能·算法·机器学习
y = xⁿ34 分钟前
【Leet Code 】滑动窗口
java·算法·leetcode
WBluuue37 分钟前
数据结构与算法:二项式定理和二项式反演
c++·算法
nianniannnn37 分钟前
力扣104.二叉树的最大深度 110. 平衡二叉树
算法·leetcode·深度优先