题解 | #寒冬信使#

寒冬信使

https://ac.nowcoder.com/acm/contest/11180/B

题目大意

给你一个01串,如果一位是1,那么可以把当前位和上一位取反,两个人轮流取,取不了时败,问先手是否必胜


解题思路

把当前位和上一位取反可以看做是往前穿一,那么就是阶梯博弈


code

#include<cstdio>
#include<cstring>
#include<iostream>
#include<algorithm>
#define ll long long
#define N 100100
using namespace std;
int T,n,ans;
char s[N];
int main()
{
	scanf("%d",&T);
	while(T--){
		scanf("%s",s+1);
		n=strlen(s+1);
		ans=0;
		for(int i=1;i<=n;i+=2)
			ans^=s[i]-48;
		if(ans)puts("T");
		else puts("X");
	}
	return 0;
}

全部评论

相关推荐

10-09 09:39
门头沟学院 C++
HHHHaos:这也太虚了,工资就一半是真的
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务