Lake Counting
来源:互联网 发布:淘宝怎么搜同城店铺 编辑:程序博客网 时间:2024/06/08 19:09
Lake Counting
Time Limit: 1000ms
Memory Limit: 65536KB
This problem will be judged on PKU. Original ID: 238664-bit integer IO format: %lld Java class name: Main
Prev
Submit Status Statistics
NextDue to recent rains, water has pooled in various places in Farmer John's field, which is represented by a rectangle of N x M (1 <= N <= 100; 1 <= M <= 100) squares. Each square contains either water ('W') or dry land ('.'). Farmer John would like to figure out how many ponds have formed in his field. A pond is a connected set of squares with water in them, where a square is considered adjacent to all eight of its neighbors.
Given a diagram of Farmer John's field, determine how many ponds he has.
Given a diagram of Farmer John's field, determine how many ponds he has.
Input
* Line 1: Two space-separated integers: N and M
* Lines 2..N+1: M characters per line representing one row of Farmer John's field. Each character is either 'W' or '.'. The characters do not have spaces between them.
* Lines 2..N+1: M characters per line representing one row of Farmer John's field. Each character is either 'W' or '.'. The characters do not have spaces between them.
Output
* Line 1: The number of ponds in Farmer John's field.
Sample Input
10 12W........WW..WWW.....WWW....WW...WW..........WW..........W....W......W...W.W.....WW.W.W.W.....W..W.W......W...W.......W.
Sample Output
3
Hint
OUTPUT DETAILS:
There are three ponds: one in the upper left, one in the lower left,and one along the right side.
There are three ponds: one in the upper left, one in the lower left,and one along the right side.
第一发wa了内心不服,大水也wa是不是该滚出队伍别去打市赛了;
最后灵光一现在GUNc++环境下交会错,要VSC++
不过解了更慢,不服啊。
AcceptedVisual C++63 ms4472 KB784 B2017-04-16 00:04:52jianba278057745Wrong AnswerGNU C++ 784 B2017-04-16 00:04:00jianba278047745AcceptedGNU C++32 ms5240 KB786 B2017-04-16 00:03:36jianba278037745AcceptedGNU C++47 ms5240 KB786 B2017-04-16 00:03:06jianba278027745AcceptedGNU C++16 ms5224 KB1140 B2017-04-16 00:01:22jianba278017745Compile ErrorGNU C++ 2280 B2017-04-16 00:01:01jianba278007745AcceptedGNU C++32 ms1280 KB1370 B2017-04-15 23:58:35jianba277997745Compile ErrorGNU C++ 1229 B2017-04-15 23:57:52jianba277987745Wrong AnswerGNU C++ 782 B2017-04-15 23:18:56jianba277977745Wrong AnswerGNU C++ 787 B2017-04-15 22:57:07jianba277967745Wrong AnswerGNU C++ 785 B2017-04-15 22:56:04jianba277957745Wrong AnswerGNU C++ 785 B2017-04-15 22:53:28jianba277917745Wrong AnswerGNU C++ 759 B2017-04-15 22:06:23
jianba278067745using namespacestd;
char map[2000][2000];
voiddfs(int x,int y)
{
if (map[x][y] =='.')
return;
map[x][y] = '.';
dfs(x + 1, y);
dfs(x - 1, y);
dfs(x , y+1);
dfs(x , y-1);
dfs(x+1, y + 1);
dfs(x-1, y - 1);
dfs(x+1, y - 1);
dfs(x-1, y +1);
}
intmain()
{
std::ios::sync_with_stdio(false);
int n, m;
int i, j;
cin >> n >> m;
memset(map,'.', sizeof(map));
for (i = 1; i <= n; i++)
{
for (j = 1; j <= m; j++)
cin >> map[i][j];
getchar();
}
int cnt = 0;
for (i = 1; i <= n; i++)
{
for (j = 1; j <= m; j++)
{
if (map[i][j]=='W')
{
dfs(i, j);
cnt++;
}
}
}
cout << cnt << endl;
return 0;
}
0 0
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- lake counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- Lake Counting
- vim安装air-line插件
- RS232接口的可靠传输方法
- 理解进程调度时机跟踪分析进程调度与进程切换的过程
- 很好的一道树状数组
- HTML
- Lake Counting
- Android关于Dex拆分(MultiDex)技术详解
- 将eclipse工程导入到Android Studio时遇到的坑
- kali rolling upgrade后重启输入账户密码后死机
- 2017.04.15学习
- Android 点击变样式(变色)。
- spring cloud discovery bootstrap first 非对称加密坑
- tensorflow的基本用法(七)——使用MNIST训练神经网络
- 自定义test之java对象属性拷贝简单实现