您的位置:首页 > 其它

POJ 2996 Help Me with the Game(模拟)

2012-11-25 21:34 423 查看
题目链接

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

#include <cstdio>
#include <cstring>
#include <cmath>
using namespace std;
char str[13] = "KQRBNP";
int main()
{
char p[101][101];
int i,j,k,z;
for(i = 0;i <= 16;i ++)
{
gets(p[i]);
}
printf("White: ");
z = 1;
for(i = 0;i <= 5;i ++)
{
for(j = 16;j >= 1;j --)//优先级问题,和下面不一样。
{
for(k = 1;k <= 32;k ++)
{
if(p[j][k] == str[i])
{
if(z)
{
if(i != 5)
printf("%c%c%d",str[i],k/4+'a',8-j/2);
else
printf("%c%d",k/4+'a',8-j/2);
z = 0;
}
else
{
if(i != 5)
printf(",%c%c%d",str[i],k/4+'a',8-j/2);
else
printf(",%c%d",k/4+'a',8-j/2);
}
}
}
}
}
printf("\n");
printf("Black: ");
z = 1;
for(i = 0;i <= 5;i ++)
{
for(j = 1;j <= 16;j ++)
{
for(k = 1;k <= 32;k ++)
{
if(p[j][k] == str[i]+'a'-'A')
{
if(z)
{
if(i != 5)
printf("%c%c%d",str[i],k/4+'a',8-j/2);
else
printf("%c%d",k/4+'a',8-j/2);
z = 0;
}
else
{
if(i != 5)
printf(",%c%c%d",str[i],k/4+'a',8-j/2);
else
printf(",%c%d",k/4+'a',8-j/2);
}
}
}
}
}
printf("\n");
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: