light 1012 Guilty Prince
题意:一共有 T 组测试数据,每组先给两个数,w,h,表示给一个 高h,宽w的矩阵,‘#’表示不能走,‘.’表示能走,‘@’表示起始点,问,从起始点出发能访问多少个点。
简单的BFS题,以前做过一次。
#include<stdio.h>
#include<string.h> struct node{
int x,y;
};
node q[];
int head,tail;
int visit[][];
int dx[]={,,-,};
int dy[]={,,,-};
int w,h;
int sx,sy;
int ans;
int OK(int x,int y)
{
if(x>= && x<=h && y>= && y<=w && !visit[x][y])
return ;
return ;
}
void Deal()
{
head=tail=; node t,t1;
t.x=sx;t.y=sy;
q[++tail]=t;
visit[sx][sy]=;
ans=; while(head<tail)
{
t=q[++head]; for(int i=;i<;i++)
{
int xx=t.x+dx[i];
int yy=t.y+dy[i];
if(OK(xx,yy))
{
ans++;
visit[xx][yy]=;
t1.x=xx;t1.y=yy;
q[++tail]=t1;
}
}
}
}
int main()
{
int T,cas=;
char ch[];
scanf("%d",&T);
while(T--)
{
memset(visit,,sizeof(visit));
scanf("%d%d",&w,&h);
for(int i=;i<=h;i++)
{
scanf("%s",ch+);
for(int j=;j<=w;j++)
{
if(ch[j]=='#') visit[i][j]=;
if(ch[j]=='@') sx=i,sy=j;
}
}
Deal();
printf("Case %d: %d\n",cas++,ans);
}
return ;
}
light 1012 Guilty Prince的更多相关文章
- Lightoj 1012 - Guilty Prince
bfs遍历一遍就行了. /* *********************************************** Author :guanjun Created Time :2016/6/ ...
- Guilty Prince LightOJ - 1012
Guilty Prince LightOJ - 1012 #include<cstdio> #include<cstring> ][]; int ans,h,w,T,TT; ] ...
- LightOJ 1012.Guilty Prince-DFS
Guilty Prince Time Limit: 2 second(s) Memory Limit: 32 MB Once there was a king named Akbar. He had ...
- LightOJ 1012 简单bfs,水
1.LightOJ 1012 Guilty Prince 简单bfs 2.总结:水 题意:迷宫,求有多少位置可去 #include<iostream> #include<cstr ...
- LightOJ——1012Guilty Prince(连通块并查集)
1012 - Guilty Prince Time Limit: 2 second(s) Memory Limit: 32 MB Once there was a king named Akbar. ...
- lightoj刷题日记
提高自己的实力, 也为了证明, 开始板刷lightoj,每天题量>=1: 题目的类型会在这边说明,具体见分页博客: SUM=54; 1000 Greetings from LightOJ [简单 ...
- A Game of Thrones(20) - Eddard
Eddard Stark rode through the towering bronze doors of the Red Keep sore, tired, hungry, and irritab ...
- LightOJ1012-Guilty Prince-DFS
Guilty Prince Time Limit: 2 second(s) Memory Limit: 32 MB Once there was a king named Akbar. He had ...
- PAT天梯赛练习题——L3-004. 肿瘤诊断(三维连通块并查集)
L3-004. 肿瘤诊断 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 在诊断肿瘤疾病时,计算肿瘤体积是很重要的一环.给定病灶 ...
随机推荐
- ASP.NET中分布式事务的使用
之前发表了一篇事务的存储过程,最近在做项目的时候遇到分布式事务,所有总结一下,跟大家分享和交流一下经验.首先说明为什么要分布式事务呢?先说说我在项目的哪里遇到分布式事务吧,我是在做网站后台开发的时候, ...
- IOS准备
1.Commond + shift + H 相当于Home键 2.更改项目的名称和icon图标 info.plist文件->bundle name -> 写上工程显示的名字 3.更改ico ...
- U - stl 的 优先队列 Ⅰ
Description Given m sequences, each contains n non-negative integer. Now we may select one number fr ...
- c#datagrid的每行的单击事件
需要一个帮助类 using System; using System.Net; using System.Windows; using System.Windows.Controls; using S ...
- Core Java读书笔记之String
Java里面的String Conceptually, Java Strings are sequences of Unicode characters. Java里面的String都是Unicode ...
- Struts2注解学习1
这是开博的第一篇,我希望每天把我学到的东西记录下来,成为一个知识库,方便以后的学习和分享 在项目中看到用struts2注解来做,很方便,做了一个用户登录的例子 1.加载所需jar包 commons-f ...
- linux function
#!/bin/bash function sayHello() { #这里的{ 和它前面的)之间可以没有空格 echo "Hello $1" } sayHello 'Neeky'
- Android 控件属性
TextView 文字属性//文字左右居中android:layout_centerHorizontal="true"//文字垂直居中android:layout_centerVe ...
- GDAL库——读取图像并提取基本信息
GDAL库是一个跨平台的栅格地理数据格式库,包括读取.写入.转换.处理各种栅格数据格式(有些特定的格式对一些操作如写入等不支持).它使用了一个单一的抽象数据模型就支持了大多数的栅格数据.这里有GDAL ...
- Oracle EBS-SQL (MRP-5):重起MRP Manager.sql
UPDATE fnd_concurrent_processes SET process_status_code = 'K' WHERE process_status_code not in ('K', ...