搜索 基础 AC 2014-01-14 15:53 170人阅读 评论(0) 收藏
2014-01-14 15:53
197 查看
题目网址:http://haut.openjudge.cn/xiyoulianxi1/1/
提交
统计
提问
总时间限制: 1000ms 内存限制: 65536kB
描述
在某个区域发现了一些晶矿,已经探明这些晶矿总共有分为两类,为红晶矿和黑晶矿。现在要统计该区域内红晶矿和黑晶矿的个数。假设可以用二维地图m[][]来描述该区域,若m[i][j]为#表示该地点是非晶矿地点,若m[i][j]为r表示该地点是红晶矿地点,若m[i][j]为b表示该地点是黑晶矿地点。一个晶矿是由相同类型的并且上下左右相通的晶矿点组成。现在给你该区域的地图,求红晶矿和黑晶矿的个数。
输入第一行为k,表示有k组测试输入。
每组第一行为n,表示该区域由n*n个地点组成,3 <= n<= 30
接下来n行,每行n个字符,表示该地点的类型。
输出对每组测试数据输出一行,每行两个数字分别是红晶矿和黑晶矿的个数,一个空格隔开。
样例输入
样例输出
搜索的简单例题,居然花了2个小时,各种小错误,有种跳楼的感觉
1:晶矿的个数
查看提交
统计
提问
总时间限制: 1000ms 内存限制: 65536kB
描述
在某个区域发现了一些晶矿,已经探明这些晶矿总共有分为两类,为红晶矿和黑晶矿。现在要统计该区域内红晶矿和黑晶矿的个数。假设可以用二维地图m[][]来描述该区域,若m[i][j]为#表示该地点是非晶矿地点,若m[i][j]为r表示该地点是红晶矿地点,若m[i][j]为b表示该地点是黑晶矿地点。一个晶矿是由相同类型的并且上下左右相通的晶矿点组成。现在给你该区域的地图,求红晶矿和黑晶矿的个数。
输入第一行为k,表示有k组测试输入。
每组第一行为n,表示该区域由n*n个地点组成,3 <= n<= 30
接下来n行,每行n个字符,表示该地点的类型。
输出对每组测试数据输出一行,每行两个数字分别是红晶矿和黑晶矿的个数,一个空格隔开。
样例输入
2 6 r##bb# ###b## #r##b# #r##b# #r#### ###### 4 #### #rrb #rr# ##bb
样例输出
2 2 1 2
#include<stdio.h> int d[4][2] = {{1,0},{-1,0},{0,1},{0,-1}}; char map[35][35]; void clean(char c,int x,int y){ int i; map[x][y]='#'; for(i=0;i<4;i++){ int k=x+d[i][0]; int b=y+d[i][1]; if(map[k][b]==c){ clean(c,k,b); } } } int main(){ int s,n; int x,y; scanf("%d",&n); while(n--){ int numb=0; int numr=0; scanf("%d",&s); getchar(); for(x=0;x<s;x++){ for(y=0;y<s;y++){ scanf("%c",&map[x][y]); } getchar(); } for(x=0;x<s;x++){ for(y=0;y<s;y++){ if(map[x][y]=='b'){ clean('b',x,y); numb++; } if(map[x][y]=='r'){ clean('r',x,y); numr++; } } } printf("%d %d\n",numr,numb); } return 0; }
搜索的简单例题,居然花了2个小时,各种小错误,有种跳楼的感觉
相关文章推荐
- 并查集 基础 AC 2014-01-14 13:37 202人阅读 评论(0) 收藏
- 移除连续重复的字符串元素 分类: python 小练习 python基础学习 divide into python 2014-01-01 15:53 392人阅读 评论(0) 收藏
- 百度搜索参数的含义 分类: Android其他 2014-08-19 15:53 99人阅读 评论(0) 收藏
- C语言基础:指针初级(补充) 分类: iOS学习 c语言基础 2015-06-10 21:54 19人阅读 评论(0) 收藏
- 使用getattr() 分类: python基础学习 divide into python 2014-02-24 15:50 198人阅读 评论(0) 收藏
- 【solr基础教程之二】索引 分类: H4_SOLR/LUCENCE 2014-07-18 21:06 3331人阅读 评论(0) 收藏
- python列表排序 分类: python基础学习 python 2013-07-17 11:19 884人阅读 评论(0) 收藏
- 【Nutch2.3基础教程】集成Nutch/Hadoop/Hbase/Solr构建搜索引擎:安装及运行【集群环境】 分类: 1_Nutch 0_jediael开发 2015-01-24 17:24 3522人阅读 评论(1) 收藏
- 字典的fromkeys()方法 分类: python基础学习 2013-06-15 16:31 305人阅读 评论(0) 收藏
- Linux下python升级至2.7步骤 分类: python基础学习 python下载 2013-09-29 11:24 4266人阅读 评论(2) 收藏
- UI基础:UILabel.UIFont 分类: iOS学习-UI 2015-07-01 19:38 107人阅读 评论(0) 收藏
- 字符串strip()方法注意事项 分类: python基础学习 2013-08-16 12:01 422人阅读 评论(0) 收藏
- python中文编码转换 分类: python基础学习 python 小练习 2013-10-11 17:22 331人阅读 评论(0) 收藏
- win7 下安装ipython 分类: python基础学习 software 2013-10-19 12:23 1383人阅读 评论(0) 收藏
- Avro基础 分类: C_OHTERS 2015-02-14 19:56 310人阅读 评论(0) 收藏
- python apply的一点知识 分类: python基础学习 2013-12-11 13:58 875人阅读 评论(0) 收藏
- Python基础学习-Python中最常见括号()、[]、{}的区别 2015-08-13 07:54 by xuxiaoxiaoxiaolu, 1138 阅读, 0 评论, 收藏, 编辑 Pytho
- C语言基础总结 分类: iOS学习 c语言基础 2015-06-11 10:08 23人阅读 评论(0) 收藏
- udp协议的数据接收与发送的代码 分类: VC++ 网络基础 2014-02-25 08:15 700人阅读 评论(0) 收藏
- 对象使用self注意事项 分类: python基础学习 2013-09-03 09:52 218人阅读 评论(0) 收藏