bzoj2464: 中山市选[2009]小明的游戏(最短路)
2464: 中山市选[2009]小明的游戏
题目:传送门
题解:
最短路的裸题...
代码:
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<algorithm>
#include<cmath>
using namespace std;
int dx[]={,,-,,};
int dy[]={,,,-,};
struct node
{
int x,y;
}list[];
int d[][],sx,sy,ex,ey;
bool v[][];
char s[][];
int main()
{
int n,m;
while(scanf("%d%d",&n,&m)!=EOF)
{
if(n== && m==)break;
for(int i=;i<=n;i++)scanf("%s",s[i]+);
scanf("%d%d%d%d",&sx,&sy,&ex,&ey);sx++;sy++;ex++;ey++;
list[].x=sx;list[].y=sy;
memset(d,,sizeof(d));d[sx][sy]=;
memset(v,false,sizeof(v));v[sx][sy]=true;
int head=,tail=;
while(head!=tail)
{
int x=list[head].x,y=list[head].y;
for(int i=;i<=;i++)
{
int tx=x+dx[i],ty=y+dy[i];
if(tx< || ty< || tx>n || ty>m) continue;
int c;if(s[tx][ty]==s[x][y])c=;else c=;
if(d[tx][ty]>d[x][y]+c)
{
d[tx][ty]=d[x][y]+c;
if(v[tx][ty]==false)
{
v[tx][ty]=true;
list[tail].x=tx,list[tail].y=ty;
tail++;if(tail==n*m+)tail=;
}
}
}
head++;if(head==n*m+) head=;
v[x][y]=false;
}
printf("%d\n",d[ex][ey]);
}
return ;
}
bzoj2464: 中山市选[2009]小明的游戏(最短路)的更多相关文章
- BZOJ2464: 中山市选[2009]小明的游戏
2464: 中山市选[2009]小明的游戏 Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 280 Solved: 124[Submit][Statu ...
- 最短路【bzoj2464】: 中山市选[2009]小明的游戏
2464: 中山市选[2009]小明的游戏 Description 小明最近喜欢玩一个游戏.给定一个n * m的棋盘,上面有两种格子#和@.游戏的规则很简单:给定一个起始位置和一个目标位置,小明每一步 ...
- 【bzoj2464】中山市选[2009]小明的游戏
直接转换成最短路 #include<algorithm> #include<iostream> #include<cstdlib> #include<cstr ...
- AC日记——中山市选[2009]小明的游戏 bzoj 2464
2464 思路: 最短路: 代码: #include <cstdio> #include <cstring> #include <iostream> #includ ...
- BZOJ 2463: [中山市选2009]谁能赢呢?
2463: [中山市选2009]谁能赢呢? Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1887 Solved: 1390[Submit][Sta ...
- bzoj 2463 [中山市选2009]谁能赢呢?(博弈)
2463: [中山市选2009]谁能赢呢? Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 1290 Solved: 944[Submit][Stat ...
- BZOJ 2463: [中山市选2009]谁能赢呢?(新生必做的水题)
2463: [中山市选2009]谁能赢呢? Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 2372 Solved: 1750[Submit][Sta ...
- bzoj千题计划169:bzoj2463: [中山市选2009]谁能赢呢?
http://www.lydsy.com/JudgeOnline/problem.php?id=2463 n为偶数时,一定可以被若干个1*2 矩形覆盖 先手每次从矩形的一端走向另一端,后手每次走向一个 ...
- bzoj 2463 [中山市选2009]谁能赢呢? 博弈
[中山市选2009]谁能赢呢? Time Limit: 10 Sec Memory Limit: 128 MBSubmit: 3014 Solved: 2165[Submit][Status][D ...
随机推荐
- Fatal error: Incompatible file format: The encoded file has format major ID 1...解决方式
申请好域名和空间后.将站点源代码上传到空间,解析好域名后.在地址栏输入域名出现以下错误: Fatal error: Incompatible file format: The encoded file ...
- PHP7添加swoole扩展
swoole需要php版本在7.0以上. 1.进入php目录中的bin目录下,通过pecl指令进行安装. cd /usr/local/php7/bin [root@localhost bin]# pw ...
- CGContext含义
代码 含义 CGContextRef context = UIGraphicsGetCurrentContext(); 设置上下文 CGContextMoveToPoint 开始画线 CGContex ...
- php面向对象之__isset和__unset
php面向对象之__isset和__unset 一.简介 __isset和__unset都是对不可访问属性的操作,前者是检验的时候自动调用,后者是销毁的时候自动调用. 比如说在类外访问private的 ...
- Ubuntu开机报错:could not update ICEauthority file /home/user/.ICEauthority(转载)
解决方法如下: 一. 代码:sudo chown $USER:$USER /home/$USER/.ICEauthority sudo chmod 644 /home/$USER/.IC ...
- 使用dbms_metadata.get_ddl遇到ORA-31603
建了一个外部表,想看看这个表的信息,一查就报错了: SQL> select dbms_metadata.get_ddl('TABLE','ext_case1') from dual; ERROR ...
- Kylin基础教程(二)
近期先把Kylin教程整理完毕,后续根据大家需求(可能会发起投票),整理其他技术栈知识教程. OK,那么接上一篇文章,感性认知了Kylin之后,我们先来看一下如何部署Kylin吧. 序号也依然沿用上一 ...
- Linux 搭建互信后,仍需要密码验证
修改ssh配置文件: vi /etc/ssh/sshd_config PermitRootLogin no 注释掉
- day12 字符编码
计算机基础 启动应用程序 双击QQ 操作系统接受指令然后把该操作转化成0和1发送给CPU CPU接受指令然后把指令发送给内存 内存接受指令把指令发送给硬盘读取数据 QQ在内存中运行 写文本的流程 在记 ...
- Lapack下载安装
安装 1.下载压缩文件 wget http://www.netlib.org/lapack/lapack-3.8.0.tar.gz 2.解压缩 tar -zxvf lapack-3.8.0.tar.g ...