标签:题目 上下左右 一个 amp com tor href vector for
给定一个8 * 8 的棋盘,棋盘上有白色的车,白色的像,空白格,黑色卒,分别用R,B,.,p表示
R可以向上下左右四个方向移动,遇到B的时候或者p的时候停止
分别求往四个方向上能遇到几个p
题目比较简单,就是找到R,然后四个方向走就是了。
https://leetcode-cn.com/problems/available-captures-for-rook/
class Solution { public: int numRookCaptures(vector<vector<char>>& board) { int res = 0; for(int i = 0; i < 8; i++){ for(int j = 0; j < 8; j++){ if(board[i][j] == ‘R‘){ for(int k = i-1; k >= 0; k--){ if(board[k][j] == ‘p‘){ res++; break;; } if(board[k][j] == ‘B‘) break; } for(int k = i+1; k < 8; k++){ if(board[k][j] == ‘p‘){ res++; break;; } if(board[k][j] == ‘B‘) break; } for(int k = j+1; k < 8; k++){ if(board[i][k] == ‘p‘){ res++; break; } if(board[i][k] == ‘B‘) break; } for(int k = j-1; k >= 0; k--){ if(board[i][k] == ‘p‘){ res++; break; } if(board[i][k] == ‘B‘) break; } } } } return res; } };
标签:题目 上下左右 一个 amp com tor href vector for
原文地址:https://www.cnblogs.com/olajennings/p/12577318.html