关注
public class Main { private static int pNums = 0; private static int qNums = 0; private static int qTmpSum = 0; public static void main(String[] args) { Scanner scanner = new Scanner(System.in); String[] line1 = scanner.nextLine().split(","); int m = Integer.parseInt(line1[0]); int n = Integer.parseInt(line1[1]); int[][] grids = new int[m][n]; for (int i = 0; i < m; i++) { String[] line2 = scanner.nextLine().split(","); for (int j = 0; j < n; j++) { grids[i][j] = Integer.parseInt(line2[j]); } } pNums = numIslands(grids); System.out.println(pNums + "," + qNums); } public static int numIslands(int[][] grid) { int m = grid.length; int n = grid[0].length; boolean[][] visited = new boolean[m][n]; int result = 0; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { if (grid[i][j] == 1 && !visited[i][j]) { qTmpSum = 0; numIslandsDFS(grid, visited, i, j); result++; } } } return result; } private static void numIslandsDFS(int[][] grid, boolean[][] visited, int x, int y) { if (x < 0 || x >= grid.length) return; if (y < 0 || y >= grid[x].length) return; if (grid[x][y] != 1 || visited[x][y]) return; visited[x][y] = true; qTmpSum++; if (qNums < qTmpSum) qNums = qTmpSum; numIslandsDFS(grid, visited, x - 1, y); numIslandsDFS(grid, visited, x - 1, y + 1); numIslandsDFS(grid, visited, x, y + 1); numIslandsDFS(grid, visited, x + 1, y + 1); numIslandsDFS(grid, visited, x + 1, y); numIslandsDFS(grid, visited, x + 1, y - 1); numIslandsDFS(grid, visited, x, y - 1); numIslandsDFS(grid, visited, x - 1, y - 1); } }
查看原帖
点赞 评论
相关推荐
查看35道真题和解析
点赞 评论 收藏
分享
牛客热帖
正在热议
# 25届秋招总结 #
300219次浏览 2658人参与
# 如果不工作真的会快乐吗 #
59141次浏览 516人参与
# 阿里云管培生offer #
17196次浏览 294人参与
# 地方国企笔面经互助 #
3787次浏览 10人参与
# 美团求职进展汇总 #
1327154次浏览 12448人参与
# 选完offer后,你后悔学本专业吗 #
19868次浏览 143人参与
# 百度开奖 #
162068次浏览 972人参与
# 正在实习的你,几点下班 #
51806次浏览 389人参与
# 国央企薪资爆料 #
8260次浏览 67人参与
# 如何一边实习一边秋招 #
992050次浏览 12638人参与
# 提前批简历挂麻了怎么办 #
146408次浏览 1948人参与
# 学历or实习经历,哪个更重要 #
50969次浏览 402人参与
# 海康威视求职进展汇总 #
398764次浏览 3406人参与
# 米哈游求职进展汇总 #
175870次浏览 1458人参与
# 求职遇到的搞笑事件 #
70771次浏览 577人参与
# 投递实习岗位前的准备 #
1179107次浏览 18392人参与
# 面试体验感最好的是哪家? #
85067次浏览 845人参与
# 实习生应该准时下班吗 #
167397次浏览 1159人参与
# 得物求职进展汇总 #
66218次浏览 682人参与
# 网申一定要掌握的小技巧 #
5326次浏览 53人参与
# 招聘要求与实际实习内容不符怎么办 #
10262次浏览 273人参与
# 0offer是寒冬太冷还是我太菜 #
898147次浏览 8011人参与