题目:
解题思路:
其实很简单,先找到车的位置,在扫描车所在的行和列判断即可
源码:
int numRookCaptures(char** board, int boardSize, int* boardColSize){
int i,j;
int h,l;
int count = 0;
for(i=0;i<boardSize;i++){
for(j=0;j<*boardColSize;j++){
if(board[i][j] == 'R'){
h = i;
l = j;
break;
}
}
}
for(j=l-1;j>=0;j--){
if(board[h][j] == 'B')
break;
if(board[h][j] == 'p'){
count ++;
break;
}
}
for(j=l+1;j<*boardColSize;j++){
if(board[h][j] == 'B')
break;
if(board[h][j] == 'p'){
count ++;
break;
}
}
for(i=h-1;i>=0;i--){
if(board[i][l] == 'B')
break;
if(board[i][l] == 'p'){
count ++;
break;
}
}
for(i=h+1;i<boardSize;i++){
if(board[i][l] == 'B')
break;
if(board[i][l] == 'p'){
count ++;
break;
}
}
return count;
}
踩坑点:
纯属强迫症作祟,嘿嘿!!!