UVa 871 - Counting Cells in a Blob
2015-03-09 23:55
267 查看
题目:一个01构成的图,求1的最大联通个数(相邻八个方向)。
分析:图论、搜索、floodfill。求解所有区域取最大即可。
说明:注意输出格式╮(╯▽╰)╭。
分析:图论、搜索、floodfill。求解所有区域取最大即可。
说明:注意输出格式╮(╯▽╰)╭。
#include <iostream> #include <cstdlib> #include <cstdio> using namespace std; char maps[30][30],buf[30]; int dxy[8][2] = {1,-1,1,0,1,1,0,-1,0,1,-1,-1,-1,0,-1,1}; int dfs(int x, int y) { if (x < 0 || y < 0) return 0; if (maps[x][y] != '1') return 0; maps[x][y] = '0'; int sum = 1; for (int k = 0 ; k < 8 ; ++ k) sum += dfs(x+dxy[k][0], y+dxy[k][1]); return sum; } int main() { int n; scanf("%d",&n); gets(buf); gets(buf); while (n --) { int count = 0; while (gets(maps[count])) if(!maps[count ++][0]) break; int Max = 0; for (int i = 0 ; i < count ; ++ i) for (int j = 0 ; maps[i][j] ; ++ j) if (maps[i][j] == '1') Max = max(Max, dfs(i, j)); printf("%d\n",Max); if (n) printf("\n"); } return 0; }
相关文章推荐
- UVA - 1225 Digit Counting
- Uva 10294 Arif in Dhaka (First Love Part 2)
- UVA 12657(p144)----Boxes in a Line
- Uva 10816 Travel in Desert 【SPFA+二分】
- UVa494 - Kindergarten Counting Game,java写的
- UVa 11174 - Stand in a Line
- UVa 216 - Getting in Line
- Wine trading in Gergovia uva+贪心
- [转]error: 'retainCount' is unavailable: not available in automatic reference counting mode
- Reusable Cells in UITableView
- uva 11054 - Wine trading in Gergovia
- uva 107 - The Cat in the Hat
- UVa 216 - Getting in Line(回溯法)
- pat 1115. Counting Nodes in a BST (30)
- 数三角形Triangel Counting UVa 11401()
- 习题3-3 Digit Counting UVa 1225
- Cannot create __weak reference in file using manual refrence counting
- 湖南省第八届大学生程序设计大赛原题 D - 平方根大搜索 UVA 12505 - Searching in sqrt(n)
- PAT甲题题解-1115. Counting Nodes in a BST (30)-(构建二分搜索树+dfs)
- Uva - 10340 - All in All