【思维|天气预报(牛客)】本来以为是不难的一道题 但只得了40分
在尺取得时候写错啦
传送门
#include
using namespace std;
int main()
{
int n,a,b,sum;
cin>>n>>a>>b;
string s;
cin>>s;
int l=0,r=0,x=0,y=0,q=0,p=0;
long long ans=0;
for(int i=0,j=0;
i.size();
i++)
{
if(s[i]=='0')
x++;
else
y++;
while(j<=i&&x>=a&&y>=b)//在这里的时候要加上一个条件判断 不能只让j加一次
{
ans+=n-i;
if(s[j]=='0')
x--;
else
y--;
j++;
}
}
if(a+b==0)
cout<
推荐阅读
- 算法|Acwing1230. K倍区间
- c++|2022/3/29 每日思维
- 每天刷题档|merge_sort_归并排序 —每日算法档
- acwing|【acwing】846. 树的重心**
- C语言程序练习|爬动的蠕虫
- 算法笔记练习题|(5.6B)n的阶乘
- 蓝桥杯Java真题|19年蓝桥杯Java B组省赛第三题(数列求值)
- 华师oj|2857. 编辑距离
- 蓝桥杯单片机真题|第十三届蓝桥杯单片机省赛模拟题(客观题程序题)