B. Binary Removals1000 / 思维

Posted 幽殇默

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了B. Binary Removals1000 / 思维相关的知识,希望对你有一定的参考价值。


https://codeforces.com/problemset/problem/1499/B
题目的意思就是让我们删除一些东西,使字符串有序,但是需要注意的是不可以连着删除,只能隔着删除。
对于00 必定会留一个0,11比会留一个1。
故我们只需判断必定的1是不是在必定的0前面即可。

#include<bits/stdc++.h>
using namespace std;
bool solve(string s)
{
	bool flag=0;
	for(int i=1;i<s.size();i++)
	{
		if(s[i]=='1'&&s[i-1]=='1')  flag=1;
		if(flag&&s[i]=='0'&&s[i-1]=='0') return false;
	}
	return true;
}
int main(void)
{
	int t; cin>>t;
	while(t--)
	{
		string s; cin>>s;
		if(solve(s)) puts("YES");
		else puts("NO");
	}
	return 0;
}

以上是关于B. Binary Removals1000 / 思维的主要内容,如果未能解决你的问题,请参考以下文章

B. Quasi Binary1400 / 贪心

Educational Codeforces Round 75 (Rated for Div. 2) B. Binary Palindromes

code forces 999CAlphabetic Removals

cf 1237 C2. Balanced Removals (Harder)

1481. Least Number of Unique Integers after K Removals

Codeforces 1237C2. Balanced Removals (Harder)