Sean's Note: [C/C++] ACM - 10196 Check the check ( Notice : 存取字串 )

2006年10月6日 星期五

[C/C++] ACM - 10196 Check the check ( Notice : 存取字串 )

如果 Input 剛好是 8 x 8 的陣列, 用下列方法存取時,

for ( i = 0; i < 8;  i++) 
  scanf ("%s", board[i]);
要注意宣告至board[8][9] 或board[8][N] ( N >= 9 ) 
第九個位置, board[i][8] 是用來存放結束字元的.
如果是用
 for ( i = 0; i < 8; i++)
   {
   for ( j = 0; i < 8; i++)
     scanf ("%c", &board[i][j]);
   scanf ("%c"); 
   }
則 N >= 8  即可, 不用考慮結束字元.
但是須注意把換行 \n skip掉, 否則會存放在陣列裡.
PS : 另外, 題目雖已說明不會有黑白棋都被將軍的情況, 但是似乎是有的, 而且有的話, 印出 white king is in check.

沒有留言:

張貼留言