3385: [Usaco2004 Nov]Lake Counting 数池塘
时间:2022-05-08
本文章向大家介绍3385: [Usaco2004 Nov]Lake Counting 数池塘,主要内容包括3385: [Usaco2004 Nov]Lake Counting 数池塘、Description、Input、Output、Sample Input、Sample Output、HINT、Source、基本概念、基础应用、原理机制和需要注意的事项等,并结合实例形式分析了其使用技巧,希望通过本文能帮助到大家理解应用这部分内容。
3385: [Usaco2004 Nov]Lake Counting 数池塘
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 22 Solved: 21
Description
农夫约翰的农场可以表示成N×M(1≤N,M≤100)个方格组成的矩形.由于近日的降雨,
在约翰农场上的不同地方形成了池塘.每一个方格或者有积水(’W’)或者没有积水(’.’).农夫约翰打算数出他的农场上共形成了多少池塘.一个池塘是一系列相连的有积水的方格,每一个方格周围的八个方格都被认为是与这个方格相连的.
现给出约翰农场的图样,要求输出农场上的池塘数.
Input
第1行:由空格隔开的两个整数N和M.
第2到N+1行:每行M个字符代表约翰农场的一排方格的状态.每个字符或者是’W’或者
是’.’,字符之间没有空格.
Output
约翰农场上的池塘数.
Sample Input
10 12 W ........ 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
共有3个池塘:一个在左上角,一个在左下角,还有一个沿着右边界
Source
题解:一开始居然WA了一下,结果发现子程序里面忘申请局部变量i了TT
别的实在没了,直接灌水秒之,不明白这个为啥也能成为金组。。。不过貌似NOV2004只有金组的= =
1 /**************************************************************
2 Problem: 3385
3 User: HansBug
4 Language: Pascal
5 Result: Accepted
6 Time:8 ms
7 Memory:344 kb
8 ****************************************************************/
9
10 const dir:array[1..8,1..2] of longint=((0,1),(0,-1),(1,0),(-1,0),(1,-1),(-1,1),(1,1),(-1,-1));
11 var
12 i,j,k,l,m,n,ans:longint;
13 ch:char;
14 a:array[0..101,0..101] of longint;
15 procedure floodfill(x,y:longint);
16 var i:longint;
17 begin
18 if a[x,y]=0 then exit;
19 a[x,y]:=0;
20 for i:=1 to 8 do
21 if a[x+dir[i,1],y+dir[i,2]]=1 then floodfill(x+dir[i,1],y+dir[i,2]);
22 end;
23 begin
24 readln(n,m);
25 fillchar(a,sizeof(a),0);
26 for i:=1 to n do
27 for j:=1 to m do
28 begin
29 read(ch);
30 if upcase(ch)='W' then a[i,j]:=1;
31 if j=m then readln;
32 end;
33 ans:=0;
34 for i:=1 to n do
35 for j:=1 to m do
36 if a[i,j]=1 then
37 begin
38 inc(ans);
39 floodfill(i,j);
40 end;
41 writeln(ans);
42 readln;
43 end.
- JavaScript 教程
- JavaScript 编辑工具
- JavaScript 与HTML
- JavaScript 与Java
- JavaScript 数据结构
- JavaScript 基本数据类型
- JavaScript 特殊数据类型
- JavaScript 运算符
- JavaScript typeof 运算符
- JavaScript 表达式
- JavaScript 类型转换
- JavaScript 基本语法
- JavaScript 注释
- Javascript 基本处理流程
- Javascript 选择结构
- Javascript if 语句
- Javascript if 语句的嵌套
- Javascript switch 语句
- Javascript 循环结构
- Javascript 循环结构实例
- Javascript 跳转语句
- Javascript 控制语句总结
- Javascript 函数介绍
- Javascript 函数的定义
- Javascript 函数调用
- Javascript 几种特殊的函数
- JavaScript 内置函数简介
- Javascript eval() 函数
- Javascript isFinite() 函数
- Javascript isNaN() 函数
- parseInt() 与 parseFloat()
- escape() 与 unescape()
- Javascript 字符串介绍
- Javascript length属性
- javascript 字符串函数
- Javascript 日期对象简介
- Javascript 日期对象用途
- Date 对象属性和方法
- Javascript 数组是什么
- Javascript 创建数组
- Javascript 数组赋值与取值
- Javascript 数组属性和方法
- 11 Confluent_Kafka权威指南 第十一章:流计算
- 简直骚操作,ThreadLocal还能当缓存用
- 品优购(IDEA版)-第一天
- 品优购(IDEA版)-第二天
- 品优购第四天
- 深度学习框架OneFlow的并行特色(附框架源码和教程)
- 图解Java设计模式
- python 如何解决 No module named ‘pip‘问题
- 用多智能体强化学习算法MADDPG解决"老鹰捉小鸡"问题
- 网站日志实时分析之Flink处理实时热门和PVUV统计
- 大数据量下的集合过滤—Bloom Filter
- 实时数仓链路分享:kafka =>SparkStreaming=>kudu集成kerberos
- rocketmq broker启动报错,找不到或无法加载主类
- 视频监控联网RTSP平台EasyNVR用户管理权限与实际权限不匹配,该如何排查?
- 2020CHINC,来赴一场“共建智慧医院”的约会