关注
#include <iostream>
#include <vector>
using namespace std;
const int direction[4][2] = {
{-1,0}, // 上
{1,0}, // 下
{0,1}, // 右
{0,-1} // 左
};
void helper(vector<vector<int>>& matrix, int x, int y, vector<vector<bool>>& visited)
{
int M = matrix.size();
for(int i=0;i<4;i++)
{
int tmp_x = x + direction[i][0];
int tmp_y = y + direction[i][1];
if(tmp_x<0 || tmp_y<0 || tmp_x>=M || tmp_y>=M)
{
continue;
}
if(matrix[tmp_x][tmp_y]==1 && !visited[tmp_x][tmp_y])
{
visited[tmp_x][tmp_y] = true;
helper(matrix, tmp_x, tmp_y, visited);
}
}
}
int main(int argc, char* argv[])
{
int M = 0;
while(cin>>M)
{
vector<vector<int>> matrix(M, vector<int>(M));
for(int i=0;i<M;i++)
{
for(int j=0;j<M;j++)
{
cin >> matrix[i][j];
}
}
int num = 0;
vector<vector<bool>> visited(M, vector<bool>(M, false));
for(int i=0;i<M;i++)
{
for(int j=0;j<M;j++)
{
if(matrix[i][j]==1 && !visited[i][j])
{
visited[i][j] = true;
num++;
helper(matrix, i, j, visited);
}
}
}
cout << num << endl;
}
return 0;
}
查看原帖
点赞 3
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 同bg的你秋招战况如何? #
168082次浏览 974人参与
# 工作后,谈恋爱还和学生时代一样吗? #
39532次浏览 373人参与
# 京东开奖 #
447938次浏览 2504人参与
# 今年秋招是回暖还是遇冷 #
21974次浏览 144人参与
# 职场破冰,你们都聊什么? #
28833次浏览 152人参与
# 你实习是赚钱了还是亏钱了? #
21054次浏览 194人参与
# 360集团校招 #
3445次浏览 22人参与
# 阿里云工作体验 #
31900次浏览 108人参与
# 你的领导最像哪种动物,为什么? #
24238次浏览 134人参与
# 我的AI电子员工 #
21049次浏览 152人参与
# 三一集团提前批进度交流 #
40285次浏览 228人参与
# 毕业论文进行时 #
2650次浏览 50人参与
# 诺瓦星云求职进展汇总 #
225737次浏览 1732人参与
# 我来点评面试官 #
10941次浏览 85人参与
# 教师节,你送祝福了吗 #
11699次浏览 76人参与
# 来聊聊你目前的求职进展 #
686564次浏览 6921人参与
# 秋招开始捡漏了吗 #
63595次浏览 441人参与
# 找工作八股要背到什么程度? #
12627次浏览 199人参与
# 上班摸鱼,你都在干些什么? #
29188次浏览 223人参与
# 用一句话形容你的团队氛围 #
13594次浏览 150人参与
# 三一重工求职进展汇总 #
22635次浏览 82人参与
# 你找工作是从容有余 or 匆忙滚爬? #
7333次浏览 76人参与
