Fancy Mouse
- -|||
和TJU1044一样,看懂题目就可以做了。
自己画一个棋盘,找一下规律,剩下的就是一堆的条件判断了。
#include<iostream>
using namespace std;

int Boundary(int num);
int Chess(int line,int row);
int main()
{
    
char grid[2];
    
int data,line,row;
    cin
>>data;
    
while(data-- >0)
    
{
        cin
>>grid;
        line
=grid[1]-'0';
        row
=grid[0]-'a'+1;
        cout
<<Chess(Boundary(line),Boundary(row))<<endl;
    }

    
return 0;
}

int Boundary(int num)
{
    
if(num>4return 9-num;
    
else return num;
}

int Chess(int line,int row)
{
    
switch(line)
    
{
    
case 1:
        
switch(row)
        
{
        
case 1:
            
return 2;
        
case 2:
            
return 3;
        
default:
            
return 4;
        }

    
case 2:
        
switch(row)
        
{
        
case 1:
            
return 3;
        
case 2:
            
return 4;
        
default:
            
return 6;
        }

    
default:
        
switch(row)
        
{
        
case 1:
            
return 4;
        
case 2:
            
return 6;
        
default:
            
return 8;
        }

    }

}
posted on 2005-09-24 13:04  Fancy Mouse  阅读(303)  评论(1编辑  收藏  举报