leetcode
扫描一遍
如果左边或者上边有X
则不加,反之则加,注意边界判断
class Solution { public: int countBattleships(vector<vector<char>>& board) { int num = 0; for(int i = 0; i < board.size(); ++i) { for(int j = 0; j < board[i].size(); ++j) { if(board[i][j]=='X') { if(i + j == 0) num++; else if(i == 0 && board[i][j - 1] == '.') num++; else if(j == 0 && board[i - 1][j] == '.') num++; else if(i * j && board[i][j - 1] == '.' && board[i - 1][j] == '.') num++; } } } return num; } };