关注
#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
相关推荐
01-28 16:12
中南大学 Java
明天不下雨了:那我建议可以用 chatgpt atlas 或者 dia 去刷,也可以用 chrome 加个 ai 插件去刷 点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 春招什么时候投? #
4826次浏览 74人参与
# 春节提前走,你用什么理由请假? #
4788次浏览 106人参与
# 春节前,你还在投简历吗? #
6808次浏览 92人参与
# 实习到现在,你最困惑的一个问题 #
1759次浏览 55人参与
# 牛客AI体验站 #
13268次浏览 253人参与
# 牛友的春节生活 #
1503次浏览 56人参与
# 备战春招/暑实,现在应该做什么? #
1532次浏览 52人参与
# 从夯到拉,锐评职场mentor #
1454次浏览 31人参与
# 聊聊Agent开发 #
13886次浏览 350人参与
# 距离春招还有一个月,你现在是什么开局? #
2813次浏览 53人参与
# 推荐一个值得做的AI项目 #
3767次浏览 122人参与
# 暑期实习什么时候投? #
3420次浏览 83人参与
# 实习想申请秋招offer,能不能argue薪资 #
218522次浏览 1171人参与
# 腾讯工作体验 #
566821次浏览 3700人参与
# 哪些瞬间让你真切感受到了工作的乐趣 #
24413次浏览 105人参与
# 通信硬件2024笔试面试经验 #
269108次浏览 2053人参与
# 实习必须要去大厂吗? #
188456次浏览 1765人参与
# 正在春招的你,也参与了去年秋招吗? #
349837次浏览 2590人参与
# 双非本科的出路是什么? #
208662次浏览 1566人参与
# 最难的技术面是哪家公司? #
65378次浏览 971人参与
美的集团公司福利 878人发布