题目描述:
WP
的好基友
CZ
被妖怪抓走了(话说
CZ
这货长得太漂亮了老是勾引妖怪,不守基道
…
..
),聪明机智的
WP
只好去救自己的好基友。
“妖怪快快放了我师傅,额,不对,快快放了我的基友
……
”。
妖怪听后怒之,要与
WP
玩一场智力游戏,来争夺基友。
游戏描述如下:
给出一个数字串N,两人轮流从中取出一个数字,要求每次取完之后剩下的数是3的倍数,不能取数者输。两人都足够聪明,S代表WP,WP先取,T代表妖怪,妖怪后取,谁会会获胜?
游戏描述如下:
给出一个数字串N,两人轮流从中取出一个数字,要求每次取完之后剩下的数是3的倍数,不能取数者输。两人都足够聪明,S代表WP,WP先取,T代表妖怪,妖怪后取,谁会会获胜?
输入
输入第一行一个整数
T(
0 < T < 60)
接下来
T行,每行有一个数字串
N(N由不超过
1000个非
0数字组成
)。
输出
Case x: y x表示第几组数据,y表示S或T
示例输入
3 4 33 771
示例输出
Case 1: S Case 2: T Case 3: T
#include <stdio.h>
#include <string.h>
int main()
{
char s[1001];
int t,i,j,len,sum;
char win;
scanf("%d",&t);
for(j=1;j<=t;j++)
{
scanf("%s",s);
len=strlen(s);
for(i=sum=0;i<len;i++)
sum+=s[i]-'0';
win='T';
while(1)
{
for(i=0;i<len;i++)
if(s[i]!='0' && (sum-(s[i]-'0'))%3==0)
{
sum-=s[i]-'0';
s[i]='0';
if(win=='T')
win='S';
else
win='T';
break;
}
if(i==len)
break;
}
printf("Case %d: %c\n",j,win);
}
return 0;
}