POJ 2996 Help Me with the Game(模拟)

题目链接

注意优先级问题,样例看清楚,过了样例应该就能看出优先级不一样了。

 1 #include <cstdio>
 2 #include <cstring>
 3 #include <cmath>
 4 using namespace std;
 5 char str[13] = "KQRBNP";
 6 int main()
 7 {
 8     char p[101][101];
 9     int i,j,k,z;
10     for(i = 0;i <= 16;i ++)
11     {
12         gets(p[i]);
13     }
14     printf("White: ");
15     z = 1;
16     for(i = 0;i <= 5;i ++)
17     {
18         for(j = 16;j >= 1;j --)//优先级问题,和下面不一样。
19         {
20             for(k = 1;k <= 32;k ++)
21             {
22                 if(p[j][k] == str[i])
23                 {
24                     if(z)
25                     {
26                         if(i != 5)
27                         printf("%c%c%d",str[i],k/4+'a',8-j/2);
28                         else
29                         printf("%c%d",k/4+'a',8-j/2);
30                         z = 0;
31                     }
32                     else
33                     {
34                         if(i != 5)
35                         printf(",%c%c%d",str[i],k/4+'a',8-j/2);
36                         else
37                         printf(",%c%d",k/4+'a',8-j/2);
38                     }
39                 }
40             }
41         }
42     }
43     printf("\n");
44     printf("Black: ");
45     z = 1;
46     for(i = 0;i <= 5;i ++)
47     {
48         for(j = 1;j <= 16;j ++)
49         {
50             for(k = 1;k <= 32;k ++)
51             {
52                 if(p[j][k] == str[i]+'a'-'A')
53                 {
54                     if(z)
55                     {
56                         if(i != 5)
57                         printf("%c%c%d",str[i],k/4+'a',8-j/2);
58                         else
59                         printf("%c%d",k/4+'a',8-j/2);
60                         z = 0;
61                     }
62                     else
63                     {
64                         if(i != 5)
65                         printf(",%c%c%d",str[i],k/4+'a',8-j/2);
66                         else
67                         printf(",%c%d",k/4+'a',8-j/2);
68                     }
69                 }
70             }
71         }
72     }
73     printf("\n");
74     return 0;
75 }
posted @ 2012-11-25 21:34  Naix_x  阅读(177)  评论(0编辑  收藏  举报