codevs 3094 寻找sb4
sb有一天和sml吵架了,她离家出走,走到了一个a*a的正方形里,她迷路了!
A为入口,
B为sb。
正在此时,sml来到了迷宫入口,他和她都很着急,求最快要x步(从入口进,从入口出)(要*2)
‘0’为水,‘1’为路,‘2’为障碍物,‘3’为草地(可以走)。‘4’为树(也走不了),‘5’为石头(可以走)
a
a*a个数(A,B也在内)
x(A,B只统计1次)
5
0 0 0 0 A
1 1 1 1 1
3 2 4 1 0
5 5 5 5 0
0 0 0 3 B
//画横线的为路径!
12
a<=500
对于30%的数据只有“1”和“0”。
对于60%的数据没有“3”和“5”
对于100%的数据,路程>=10.
当行不通时“printf(“NoNE!”);
#include<cstdio>
#include<iostream>
using namespace std;
int sum=0,n,ff=0,x[5]={0,1,0,0,-1},y[5]={0,0,1,-1,0},f[501][501],xx[501],yy[501];
int ans[501][501];
char map[501][501]; int main()
{
int sbx,sby;
scanf("%d",&n);
for (int i=1;i<=n;i++)
for (int j=1;j<=n;j++)
{
char r;
f[i][j]=1;
cin>>r;
map[i][j]=r;
if (r=='A') {
xx[1]=i;
yy[1]=j;
f[i][j]=0;
}
if (r=='B'){
sbx=i;
sby=j;
}
if (r=='2'||r=='4'||r=='0') f[i][j]=0;
}
int head=0,tail=1;
while (head!=tail)
{
head++;
int aa=xx[head],bb=yy[head];
for (int i=1;i<=4;i++)
{
int a=xx[head]+x[i],b=yy[head]+y[i];
if (f[a][b]&&a<=n&&a>0&&b<=n&&b>0)
{
f[a][b]=0;
xx[++tail]=a;
yy[tail]=b;
ans[a][b]=ans[aa][bb]+1;
if (a==sbx&&b==sby)
{
ff=1;
break;
}
}
}
}
if (ff) cout<<ans[sbx][sby]*2;
else cout<<"NoNE!";
}
codevs 3094 寻找sb4的更多相关文章
- 3094 寻找sb4
3094 寻找sb4 时间限制: 1 s 空间限制: 32000 KB 题目等级 : 黄金 Gold 题解 查看运行结果 题目描述 Description sb有一天和sml吵架了,她 ...
- 匈牙利算法 codevs 2776 寻找代表元
codevs 2776 寻找代表元 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 广州二中苏元实验学校一共有n个社团,分别用 ...
- codevs 1204 寻找子串位置
http://codevs.cn/problem/1204/ 1204 寻找子串位置 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 青铜 Bronze 题解 查看运行结果 ...
- Codevs 3731 寻找道路 2014年 NOIP全国联赛提高组
3731 寻找道路 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description 在有向图G中,每条边的长度均为1,现给定起点和终点,请你在图中找 ...
- Codevs 2776 寻找代表元(二分图匹配)
2776 寻找代表元 时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 广州二中苏元实验学校一共有n个社团,分别用1到n编号. 广州二 ...
- codevs 1204 寻找子串位置 KMP
1204:寻找子串位置 Time Limit: 1 Sec Memory Limit: 128 MBSubmit: 18K Solved: 8K Description 给出字符串a和字符串b,保 ...
- Codevs 2989 寻找somebody
时间限制: 2 s 空间限制: 8000 KB 题目等级 : 钻石 Diamond 题目描述 Description 在一个n*m的方阵中 寻找somebody的位置 有可能k不存在输出“bianta ...
- 【二分图】【最大匹配】【匈牙利算法】CODEVS 2776 寻找代表元
裸的匈牙利,存模板. #include<cstdio> #include<vector> #include<cstring> using namespace std ...
- codevs 2776 寻找代表元
时间限制: 1 s 空间限制: 256000 KB 题目等级 : 黄金 Gold 题目描述 Description 广州二中苏元实验学校一共有n个社团,分别用1到n编号.广州二中苏元实验 ...
随机推荐
- Two Sum 解答
Question: Given an array of integers, find two numbers such that they add up to a specific target nu ...
- fedora19安装jdk
1.下载安装包 去oracle下载jdk-7u45-linux-i586.rpm 2. 更改权限 #chmod 777jdk-7u45-linux-i586.rpm 3. 安装 #rpm -ivh j ...
- iOS开发之iPhone通过get和post方式请求asp.net webservice
.创建一个webservice .在webconfig中启用http get 和http post. 复制代码 <</span> webServices > <</ ...
- 数据库日期类型转换–HSQL
最近遇到要用HSQL查询离某个时间的后十分钟的记录,不像Oracle和SqlServer中可以直接有函数转换,而是直接通过'+'来得到 Hsql Document -- standard forms ...
- js通用对象数组冒牌排序
数组对象通用 function sort(data, sortFiled, orderby) { var result = data, temp; for (var i = 0; i < res ...
- linux 网络状态工具ss命令
ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix dom ...
- 动态图片 gif
简介 android不推荐使用gif图片,一般都是png的,对于gif的图片解析比较消耗资源,但是对于一些动态gif图片的播放,如果比较小的话还是可以的,要是大的话,建议还是把gif图片转换成一帧一帧 ...
- ListView 水平滑动 水平和竖直滑动
效果 Activity public class MainActivity extends Activity { @Override protected void onCreate(B ...
- webform 复杂点的服务器控件
1 , dropdownlist: 下拉框 属性items 列表集合, 里面的每一个元素是一个 listitem . 联动的时候注意要 设置属性 .Autopostback 为ture: 注注 ...
- ASP.NET 中的返回按钮的实现【转】
返回上一页的这个东东在我们做项目的时候一般是用于填写完表单后确认的时候,有对原来输入的数据进行修改时用的,或者是因为网站为了方便浏览者而有心添加 的一个东东,一般这种功能的实现在ASP.net中都 ...