竞赛
考级
【算法分析】 可以去找寻每个连通块,看看是否连通块里有没有和海洋相邻的陆地,如果有则不会被淹没,否则反之。 【参考代码】 【时间复杂度】 O(n2)O(n^2)O(n2) 【预计得分】 100pts100pts100pts
AC君
先用BFS对每一个岛进行遍历(代码中BFS_id函数),并为它们标上他们的编号,顺便记录下有几个岛屿。利用queue 将每个是海的地方进行蔓延(代码中BFS_water函数)。最后,在主函数中遍历一遍共有几个id不同的岛屿,与最开始的岛屿数量相减。
THE 1177052