hdu 4740
老虎左拐,老鼠右拐,碰到不能走的拐一次,如果还不能走就停下,自己走过的不能走,求相遇的坐标或-1
一个停下之后,另一个还可以走
#include <cstdio>
#include <cstring>
using namespace std;
#define N 1005
struct node
{
int x,y;
}p[N*N],q[N*N];
int visi[N][N],xy[4][2]={{0,1},{1,0},{0,-1},{-1,0}};
int n;
int donkey(int x,int y,int d)
{
int step=1;
while(!visi[x][y]&&x<n&&x>=0&&y<n&&y>=0)
{
p[step].x=x;p[step++].y=y;
visi[x][y]=1;
x=x+xy[d][0];y=y+xy[d][1];
if(visi[x][y]||x<0||x>=n||y>=n||y<0)
{
x=x-xy[d][0];y=y-xy[d][1];
d=(d+1)%4;
x=x+xy[d][0];y=y+xy[d][1];
if(visi[x][y]||x<0||x>=n||y>=n||y<0) break;
} }
return step-1;
} int tiger(int x,int y,int d)
{
int step=1; while(!visi[x][y]&&x<n&&x>=0&&y<n&&y>=0)
{
q[step].x=x;q[step++].y=y;
visi[x][y]=1;
x=x+xy[d][0];y=y+xy[d][1];
if(visi[x][y]||x<0||x>=n||y>=n||y<0)
{
x=x-xy[d][0];y=y-xy[d][1];
d=(d+3)%4;
x=x+xy[d][0];y=y+xy[d][1];
if(visi[x][y]||x<0||x>=n||y>=n||y<0) break;
} }
return step-1;
} int main()
{
int i,j,r1,c1,d1,r2,c2,d2,s1,s2,flag;
while(scanf("%d",&n),n)
{
scanf("%d%d%d",&r1,&c1,&d1);
scanf("%d%d%d",&r2,&c2,&d2);
memset(visi,0,sizeof(visi));
s1=donkey(r1,c1,d1);
memset(visi,0,sizeof(visi));
s2=tiger(r2,c2,d2);
i=1;
flag=0;
while(i<=s1||i<=s2)
{
if(i>s1) {p[i].x=p[i-1].x;p[i].y=p[i-1].y;}
if(i>s2) {q[i].x=q[i-1].x;q[i].y=q[i-1].y;}
if(p[i].x==q[i].x&&p[i].y==q[i].y)
{
printf("%d %d\n",p[i].x,p[i].y);
flag=1;
break;
}
i++;
}
if(!flag) printf("-1\n");
/* printf("%d\n",s2); for(i=1;i<=s2;i++)
{
printf("%d %d\n",q[i].x,q[i].y);
}
*/
}
return 0;
}
hdu 4740的更多相关文章
- hdu 4740 The Donkey of Gui Zhou bfs
		
The Donkey of Gui Zhou Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproble ...
 - hdu 4740 The Donkey of Gui Zhou(暴力搜索)
		
题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=4740 [题意]: 森林里有一只驴和一只老虎,驴和老虎互相从来都没有见过,各自自己走过的地方不能走第二次 ...
 - hdu 4740【模拟+深搜】.cpp
		
题意: 给出老虎的起始点.方向和驴的起始点.方向.. 规定老虎和驴都不会走自己走过的方格,并且当没路走的时候,驴会右转,老虎会左转.. 当转了一次还没路走就会停下来.. 问他们有没有可能在某一格相遇. ...
 - hdu 4740 The Donkey of Gui Zhou(dfs模拟好题)
		
Problem Description There was no donkey ,) , the down-right cell ,N-) and the cell below the up-left ...
 - HDU 4740 The Donkey of Gui Zhou (模拟)
		
由于一开始考虑的很不周到,找到很多bug.....越改越长,不忍直视. 不是写模拟的料...................... 反正撞墙或者碰到已经走过的点就会转向,转向后还碰到这两种情况就会傻站 ...
 - HDU 4740 模拟题意
		
九野的博客,转载请注明出处:http://blog.csdn.net/acmmmm/article/details/11711743 题意:驴和老虎在方格中跑,跑的方式:径直跑,若遇到边界或之前走过的 ...
 - hdu 4740 The Donkey of Gui Zhou
		
1.扯犊子超多if else 判断的代码,华丽丽的TLE. #include<stdio.h> #include<string.h> #define N 1010 int ma ...
 - HDOJ 2111. Saving HDU 贪心 结构体排序
		
Saving HDU Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total ...
 - 【HDU 3037】Saving Beans Lucas定理模板
		
http://acm.hdu.edu.cn/showproblem.php?pid=3037 Lucas定理模板. 现在才写,noip滚粗前兆QAQ #include<cstdio> #i ...
 
随机推荐
- Can someone explain Webpack's CommonsChunkPlugin
			
I get the general gist that the CommonsChunkPlugin looks at all the entry points, checks to see if t ...
 - LoadRunner 技巧之THML 与 URL两种录制模式分析
			
Loadrunner的Virtual User Generator 提供人脚本的录制功能,对于初学者来说,这大大的降低了编写脚本的门槛,loadrunner提供两种录制脚本的方式:Html_based ...
 - fstab 介绍
			
http://forum.ubuntu.org.cn/viewtopic.php?t=58468 主要翻译自http://www.tuxfiles.org/linuxhelp/fstab.html,根 ...
 - UVA - 10131Is Bigger Smarter?(DAG上的DP)
			
题目:UVA - 10131Is Bigger Smarter? (DAG) 题目大意:给出一群大象的体重和IQ.要求挑选最多的大象,组成一个序列.严格的体重递增,IQ递减的序列.输出最多的大象数目和 ...
 - magento新闻邮件发送一直处于“正在发送”状态问题解决
			
今天在弄magento新闻邮件发送时候发现,单个邮件发送全然没有问题,可是新闻邮件订阅死活都不成功.国内国外的帖子都翻了一遍没实用,最后还是得靠自己了.于是開始慢慢找问题 首先想到是不是crontab ...
 - 傅老师课堂:Java高级应用之Struts2+Spring2+Hibernate3大集成
			
开篇一笑:一对情侣,非常恩爱,但男友喜欢说脏话,一天女友提出要带男友回家吃个饭,见见家长,千叮万嘱让男友别说脏话,男友在家憋了一晚上没说一句脏话,天气寒冷,到走的时候女友家长要出来送他们,男友客气的说 ...
 - CSS中为什么overflow:hidden能清除浮动(float)的影响?原理是什么?
			
http://www.zhihu.com/question/30938856 父块没有设置指定的高宽,当子块设置为浮动后,原本包裹子块的父块的高度塌陷消失,这时给父块设置overflow:hidden ...
 - Android自定义UI的实现和应用
			
在Android项目开发中,不可避免的要遇到自定义的UI,用较好的体验去讨好UED妹子和交互设计师手下留情~几个迭代下来,遇到了不少这样的要求,有简单有复杂.最好的实现方案就是讲业务和UI隔离,封装成 ...
 - C#中的多线程-入门
			
概述与概念C#支持通过多线程并行地执行代码,一个线程有它独立的执行路径,能够与其它的线程同时地运行.一个C#程序开始于一个单线程,这个单线程是被CLR和操作系统(也称为“主线程”)自动创建的,并具有多 ...
 - linux 链接控制
			
如发现系统存在大量TIME_WAIT状态的连接,通过调整内核参数解决,vim /etc/sysctl.conf编辑文件,加入以下内容:net.ipv4.tcp_syncookies = 1net.ip ...