CF297A Parity Game 题解

刚开始不知道为啥想用广搜做。。。

题目传送门

题目意思:

给你两个 01 串,问能否经过题目给的操作后使得第一个串变得与第二个串一样。


思路:

这其实是一道思维题。自己搞几个样例看看就能发现规律了。

那怎么做呢?就是将两个串的 1 的个数分别记录,然后判断第一个串是否还能加一个 1(即第一个串的 1 的个数是否是奇数)。是奇数第一个串的计数器再加一。

最后判断第一个串的 1 的个数是否大于第二个串的即可。


代码:

#include<bits/stdc++.h>
using namespace std;
#define FOR(i,x) for(auto i:x)
string a,b;
int cnt1,cnt2;
int main()
{
	cin>>a>>b;
	FOR(i,a)if(i=='1')cnt1++;
	FOR(i,b)if(i=='1')cnt2++;
	cnt1+=cnt1%2;
	if(cnt1>=cnt2)
		cout<<"YES";
	else cout<<"NO";
	return 0;
}

完美撒花~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值