码迷,mamicode.com
首页 > 其他好文 > 详细

穿越明朝之富豪杨

时间:2015-08-19 20:06:46      阅读:146      评论:0      收藏:0      [点我收藏+]

标签:

Problem D: 穿越明朝之富豪杨

Time Limit: 1 Sec  Memory Limit: 128 MB

Description

  一个月黑风高阴森恐怖的晚上,富豪杨像往常一样在皇家公共厕所,唱着他最拿手的生日快乐,唱到高音,他穿越到了明朝的紫禁城,转角遇到了朱元璋,两人一见 如故,明太祖想册封他为大公公,但富豪杨只想安安静静的做个ACMBOY,为了说服对方,两人一起进行了一次周易游戏。
  拿一段长度不超过1000位的数字,两个人进行一场游戏, 分别从数字中去掉一个数字, 并且去掉之后, 剩下的数字的每一位数相加起来的总和是3的倍数,最后不能取, 或是没有数字了, 那人就输了,另一个便胜利。 富豪杨先手。

Input

第一行是一个整数位T(T<60)是用例数,每个用例有一个整数为N。N最大只有1000位,数字的每一位都不包含0。

Output

对应每个用例,如果是富豪杨赢,显示出"Y"否则"Z"。

Sample Input

4
4
33
771
22263258

Sample Output

Case 1: Y
Case 2: Z
Case 3: Z
Case 4: Z

HINT

 1 #include <stdio.h>
 2 #include <stdlib.h>
 3 #include <string.h>
 4 int main()
 5 {
 6     int n,t=1;
 7     scanf("%d",&n);
 8     getchar();
 9     while(n--)
10     {
11         char a[1010];
12         int flag[1010],len,m=0,ans=0;
13         gets(a);
14         len=strlen(a);
15         memset(flag,0,sizeof(flag));
16         for(int i=0; i<len; i++)
17         {
18             m+=a[i]-0;
19         }
20         if(len==1)
21         {
22             printf("Case %d: Y\n",t++);
23             continue;
24         }
25         for(int i=0; i<len; i++)
26         {
27             for(int j=0; j<len; j++)
28             {
29                 if(flag[j]==0&&(m-(a[j]-0))%3==0)
30                 {
31                     flag[j]=1;
32                     m-=(a[j]-0);
33                     ans++;
34                 }
35             }
36         }
37         if(ans%2==0)
38             printf("Case %d: Z\n",t++);
39         else
40             printf("Case %d: Y\n",t++);
41     }
42     return 0;
43 }

 

穿越明朝之富豪杨

标签:

原文地址:http://www.cnblogs.com/tianmin123/p/4742833.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!