UVa 11094 - Continents
来源:互联网 发布:mac如何全屏截图 编辑:程序博客网 时间:2024/06/10 05:57
题目:有一些岛屿在湖中,地图用两种字符表示,当前处在位置是一个岛屿,求除了当前岛屿外的最大岛屿。
分析:图论,floodfill。直接利用dfs求联通部分的面积即可,然后取出最大。
说明:横线没有边界,初始的岛屿不算在内。╮(╯▽╰)╭。
#include <algorithm>#include <iostream>#include <cstdlib>#include <cstring>using namespace std;char maps[22][22];int dxy[4][2] = {0,1,1,0,-1,0,0,-1};int dfs(int x, int y, int m, int n, char c){if (x < 0 || x >= m) return 0;if (maps[x][y] != c) return 0;maps[x][y] = 0;int sum = 1;for (int i = 0; i < 4; ++ i)sum += dfs(x+dxy[i][0], (y+n+dxy[i][1])%n, m, n, c);return sum;}int main(){int m,n,x,y;while (cin >> m >> n) {for (int i = 0; i < m; ++ i)cin >> maps[i];cin >> x >> y;char ch = maps[x][y];int Max = 0;dfs(x, y, m, n, ch);for (int i = 0; i < m; ++ i)for (int j = 0; j < n; ++ j)if (maps[i][j] == ch)Max = max(Max, dfs(i, j, m, n, ch));cout << Max << endl;} return 0;}
0 0
- UVa 11094 - Continents
- uva
- UVA
- UVA
- UVA
- uva
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- UVA
- JavaBean及其两种使用方式
- hihocode第49周1001欧拉路一
- jquery判断checked的三种方法
- 我的CTF之旅(一)
- NOJ1113 斐波那契数应用 模拟
- UVa 11094 - Continents
- 【ios开发学习 - 第四课】UIButton使用
- backbone学习进阶二
- spring mvc 注解基本配置(@resource,@autowired,@Component...)
- android屏幕适配
- Python图像处理(10):从2.4.11到3.0.0
- Github上的star和fork是什么
- Nginx 战斗准备 —— 优化指南
- ZXing CaptureActivity黑屏问题