FZU 1920 Left Mouse Button 简单搜索
题意就是扫雷 问最少多少次可以把图点开……
思路也很明显 就是先把所有的标记一遍 就当所有的都要点……
录入图……
所有雷都不标记……
之后呢 遍历图……
然后碰到0就搜索一圈 碰到数字就标记……
不难 但是卡了好久……
直接上代码……
#include<stdio.h>
#include<string.h> char s[][];
bool vis[][];
int n;
int dx[]={,,,-,,-,,-};
int dy[]={,-,,,-,,,-}; void dfs(int x,int y){
if(!vis[x][y]) return ;
if(x<&&x>n&&y<&&y>n) return ;
vis[x][y]=false;
if(s[x][y]!='') return ;
else{
for(int i=;i<;i++)
dfs(x+dx[i],y+dy[i]);
}
} int main(){
int T;
scanf("%d",&T);
int time=;
while(T--){
scanf("%d",&n);
memset(vis,true,sizeof(vis));
char ss[];
for(int i=;i<=n;i++){
scanf("%s",ss);
for(int j=;j<n;j++){
s[i][j+]=ss[j];
if(s[i][j+]=='@') vis[i][j+]=false;
}
}
/*puts("");
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
printf("%c",s[i][j]);
}
puts("");
}
puts("");*/
int sum=;
for(int i=;i<=n;i++){
for(int j=;j<=n;j++){
if(s[i][j]==''&&vis[i][j]){
sum++;
dfs(i,j);
}
}
}
/*for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
printf("%c",vis[i][j]?'1':'0');
}
puts("");
}*/
for(int i=;i<=n;i++)
for(int j=;j<=n;j++)
if(vis[i][j]) sum++;
printf("Case %d: %d\n",time++,sum);
}
return ;
}
FZU 1920 Left Mouse Button 简单搜索的更多相关文章
- FZU1920 Left Mouse Button(dfs)
Problem 1920 Left Mouse Button Accept: 385 Submit: 719 Time Limit: 1000 mSec Memory Limit : 3 ...
- solr简单搜索案例
solr简单搜索案例 使用Solr实现电商网站中商品信息搜索功能,可以根据关键字搜索商品信息,根据商品分类.价格过滤搜索结果,也可以根据价格进行排序,实现分页. 架构分为: 1. solr服务器 2. ...
- ElasticSearch 5学习(4)——简单搜索笔记
空搜索: GET /_search hits: total 总数 hits 前10条数据 hits 数组中的每个结果都包含_index._type和文档的_id字段,被加入到_source字段中这意味 ...
- nyoj 284 坦克大战 简单搜索
题目链接:http://acm.nyist.net/JudgeOnline/problem.php?pid=284 题意:在一个给定图中,铁墙,河流不可走,砖墙走的话,多花费时间1,问从起点到终点至少 ...
- 分布式搜索ElasticSearch构建集群与简单搜索实例应用
分布式搜索ElasticSearch构建集群与简单搜索实例应用 关于ElasticSearch不介绍了,直接说应用. 分布式ElasticSearch集群构建的方法. 1.通过在程序中创建一个嵌入es ...
- 和我一起打造个简单搜索之SpringDataElasticSearch入门
网上大多通过 java 操作 es 使用的都是 TransportClient,而介绍使用 SpringDataElasticSearch 的文章相对比较少,笔者也是摸索了许久,接下来本文介绍 Spr ...
- 和我一起打造个简单搜索之SpringDataElasticSearch关键词高亮
前面几篇文章详细讲解了 ElasticSearch 的搭建以及使用 SpringDataElasticSearch 来完成搜索查询,但是搜索一般都会有搜索关键字高亮的功能,今天我们把它给加上. 系列文 ...
- 和我一起打造个简单搜索之Logstash实时同步建立索引
用过 Solr 的朋友都知道,Solr 可以直接在配置文件中配置数据库连接从而完成索引的同步创建,但是 ElasticSearch 本身并不具备这样的功能,那如何建立索引呢?方法其实很多,可以使用 J ...
- 和我一起打造个简单搜索之IK分词以及拼音分词
elasticsearch 官方默认的分词插件,对中文分词效果不理想,它是把中文词语分成了一个一个的汉字.所以我们引入 es 插件 es-ik.同时为了提升用户体验,引入 es-pinyin 插件.本 ...
随机推荐
- android 控件ui
公共参数: android:id="@+id/text_view" 给当前控件定义了 一个唯一标识符如:text_view android:layout_width=" ...
- java操作mongodb——连接数据库
import com.mongodb.MongoClient; MongoClient mongoClient = new MongoClient(); 连接MongoDB实例,默认为localhos ...
- 使用Maven快速创建一个SpringMVC工程步骤
第一步:创建maven工程,加入SpringMVC的maven依赖: <dependency> <groupId>org.springframework</groupId ...
- 引用AForge.video.ffmpeg,打开时会报错:找不到指定的模块,需要把发行包第三方文件externals\ffmpeg\bin里的dll文件拷到windows的system32文件夹下。
引用AForge.video.ffmpeg,打开时会报错:找不到指定的模块,需要把发行包第三方文件externals\ffmpeg\bin里的dll文件拷到windows的system32文件夹下. ...
- nodejs 包引用的终极结论
通常我们用exports 或module.exports 来导出一个文件中的接口和字段,用require来引用导出的对象.那么这个exports 和 module.exports到底有啥关联呢? 1. ...
- Func,Action 的介绍
Func,Action 的介绍 Func是一种委托,这是在3.5里面新增的,2.0里面我们使用委托是用Delegate,Func位于System.Core命名空间下,使用委托可以提升效率,例如在反射中 ...
- Ubantu安装mysql
在Linux下MySQL的安装,我一直觉得挺麻烦的,因为之前安装时就是由于复杂的配置导致有点晕.今天,需要在Linux下用Qt连接MySQL.遂安装配置了一把. 1)首先检查系统中是否已经安装了MyS ...
- H5移动端页面设计心得分享(转载)
去年JDC出了不少优秀的武媚娘…不,H5呢,大家都很拼,同时当然也积累了一些经验和教训,今天结合咱们的实战案例,从字体,排版,动效,音效,适配性,想法这几个方面好好聊一聊关于H5的设计,希望对同学们有 ...
- PHP短信发送服务 youe短信企业服务
/** * 通用短信平台HTTP接口POST方式发送短信实例 * 返回字符串 * 一般情况下调用此方法 */ function postSendMessage($msgContents,$phoneL ...
- Oracle数据库创建数据库实例1
http://jingyan.baidu.com/article/ae97a646d128d5bbfd461d00.html