2015/1/26
水題,模擬
#include<map>
#include<queue>
#include<stack>
#include<cmath>
#include<vector>
#include<climits>
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<algorithm>
using namespace std;
typedef long long ll;
#define mod 10007
#define lson pos<<1,l,mid
#define sc(n) scanf("%d",&n)
#define rson pos<<1|1,mid+1,r
#define pr(n) printf("%d\n",n)
#define met(n,m) memset(n, m, sizeof(n))
#define F(x,y,i) for(int i = x;i > y; i--)
#define f(x,y,i) for(int i = x;i < y; i++)
#define ff(x,y,i) for(int i = x;i <= y; i++)
#define FF(x,y,i) for(int i = x;i >= y; i--)
const int N=100500;
const int inf = INT_MAX;
int Max(int a,int b)
{
return a>b?a:b;
}
int Min(int a,int b)
{
return a<b?a:b;
}
char s1[100], s2[100];
int vis[9][9];
char mp[9][9];
int main()
{
int n, m, tot, x, y;
f(0,9,i)
f(0,9,j)mp[i][j]=' ';
while(gets(s1))
{
gets(s2);
met(vis,0);
int len1 = strlen(s1);
int len2 = strlen(s2);
f(7,len1,i)
{
if(s1[i]>='A'&&s1[i]<='Z')
{
y = s1[i+1]-'a'+1;
x = s1[i+2]-'0';
vis[x][y] = 1;
mp[x][y] = s1[i];
i+=3;
}
else
{
y = s1[i]-'a'+1;
x = s1[i+1]-'0';
vis[x][y] = 1;
mp[x][y] = 'P';
i+=2;
}
}
f(7,len2,i)
{
if(s2[i]>='A'&&s2[i]<='Z')
{
y = s2[i+1]-'a'+1;
x = s2[i+2]-'0';
vis[x][y] = 2;
mp[x][y] = s2[i]-'A'+'a';
i+=3;
}
else
{
y = s2[i]-'a'+1;
x = s2[i+1]-'0';
vis[x][y] = 2;
mp[x][y] = 'p';
i+=2;
}
}
for(int i = 8;i >= 1; i--)
{
printf("+---+---+---+---+---+---+---+---+\n");
for(int j = 1;j <= 8; j++)
{
if(vis[i][j])
{
if((i+j)%2)
{
printf("|.%c.",mp[i][j]);
}
else
{
printf("|:%c:",mp[i][j]);
}
}
else
{
if((i+j)%2)
{
printf("|...");
}
else
{
printf("|:::");
}
}
}
printf("|\n");
}
printf("+---+---+---+---+---+---+---+---+\n");
}
return 0;
}