起点忘记录了,一直wa

代码写的很整齐,看着很爽

  1. #include<cstdio>
  2. #include<iostream>
  3. #include<algorithm>
  4. #include<cstring>
  5. #include<cmath>
  6. #include<queue>
  7. #include<map>
  8. using namespace std;
  9. #define MOD 1000000007
  10. const int INF=0x3f3f3f3f;
  11. const double eps=1e-;
  12. typedef long long ll;
  13. #define cl(a) memset(a,0,sizeof(a))
  14. #define ts printf("*****\n");
  15. const int MAXN=;
  16. int n,m,tt;
  17. int dir[][]={,,,,,-,-,};
  18. bool vis1[MAXN][MAXN];
  19. bool vis2[MAXN][MAXN];
  20. void dfs(int dx,int dy,int dd,int tx,int ty,int td)
  21. {
  22. if(dx==tx&&dy==ty)
  23. {
  24. printf("%d %d\n",dx,dy);
  25. return;
  26. }
  27. bool f1=,f2=;
  28. int ndd=dd;
  29. int ndx=dx+dir[dd][];
  30. int ndy=dy+dir[dd][];
  31. if(ndx<||ndx>=n||ndy<||ndy>=n||vis1[ndx][ndy]) ndd=(dd+)%;
  32. ndx=dx+dir[ndd][];
  33. ndy=dy+dir[ndd][];
  34. if(ndx<||ndx>=n||ndy<||ndy>=n||vis1[ndx][ndy])
  35. {
  36. f1=;
  37. ndx=dx,ndy=dy,ndd=dd;
  38. }
  39.  
  40. int ntd=td;
  41. int ntx=tx+dir[td][];
  42. int nty=ty+dir[td][];
  43. if(ntx<||ntx>=n||nty<||nty>=n||vis2[ntx][nty]) ntd=(td-+)%;
  44. ntx=tx+dir[ntd][];
  45. nty=ty+dir[ntd][];
  46. if(ntx<||ntx>=n||nty<||nty>=n||vis2[ntx][nty])
  47. {
  48. f2=;
  49. ntx=tx,nty=ty,ntd=td;
  50. }
  51. if(f1&&f2)
  52. {
  53. printf("-1\n");
  54. return;
  55. }
  56. vis1[ndx][ndy]=;
  57. vis2[ntx][nty]=;
  58.  
  59. dfs(ndx,ndy,ndd,ntx,nty,ntd);
  60. }
  61. int main()
  62. {
  63. int i,j,k,ca=;
  64. #ifndef ONLINE_JUDGE
  65. freopen("1.in","r",stdin);
  66. #endif
  67. int dx,dy,dd,tx,ty,td;
  68. int tot=;
  69. while(scanf("%d",&n)!=EOF&&n)
  70. {
  71. cl(vis1);
  72. cl(vis2);
  73. scanf("%d%d%d",&dx,&dy,&dd);
  74. scanf("%d%d%d",&tx,&ty,&td);
  75. vis1[dx][dy]=;
  76. vis2[tx][ty]=;
  77. dfs(dx,dy,dd,tx,ty,td);
  78. }
  79. }

hdu 4741 2013杭州赛区网络赛 dfs ***的更多相关文章

  1. hdu 4738 2013杭州赛区网络赛 桥+重边+连通判断 ***

    题意:有n座岛和m条桥,每条桥上有w个兵守着,现在要派不少于守桥的士兵数的人去炸桥,只能炸一条桥,使得这n座岛不连通,求最少要派多少人去. 处理重边 边在遍历的时候,第一个返回的一定是之前去的边,所以 ...

  2. hdu 4739 2013杭州赛区网络赛 寻找平行坐标轴的四边形 **

    是平行坐标轴的,排个序搞一下就行了,卧槽,水的不行 如果不是平行的,则需要按照边长来判断

  3. hdu 4751 2013南京赛区网络赛 二分图判断 **

    和以前做过的一个二分图颇为相似,以前的是互相不认识的放在一组,这个是互相认识的,本质上是相同的 是 hdu 2444 #include<cstdio> #include<iostre ...

  4. hdu 4277 2012长春赛区网络赛 dfs+hashmap ***

    hashmap判重大法好 #include<cstdio> #include<iostream> #include<algorithm> #include<c ...

  5. hdu 4272 2012长春赛区网络赛 dfs暴力 ***

    总是T,以为要剪枝,后来发现加个map就行了 #include<cstdio> #include<iostream> #include<algorithm> #in ...

  6. hdu 4753 2013南京赛区网络赛 记忆化搜索 ****

    看到范围基本可以想到dp了,处理起来有点麻烦 #include<iostream> #include<cstdio> #include<cstring> #incl ...

  7. hdu 4731 2013成都赛区网络赛 找规律

    题意:找字串中最长回文串的最小值的串 m=2的时候暴力打表找规律,打表可以用二进制枚举

  8. hdu 4412 2012杭州赛区网络赛 期望

    虽然dp方程很好写,就是这个期望不知道怎么求,昨晚的BC也是 题目问题抽象之后为:在一个x坐标轴上有N个点,每个点上有一个概率值,可以修M个工作站, 求怎样安排这M个工作站的位置,使得这N个点都走到工 ...

  9. hdu 4411 2012杭州赛区网络赛 最小费用最大流 ***

    题意: 有 n+1 个城市编号 0..n,有 m 条无向边,在 0 城市有个警察总部,最多可以派出 k 个逮捕队伍,在1..n 每个城市有一个犯罪团伙,          每个逮捕队伍在每个城市可以选 ...

随机推荐

  1. 比较NHibernate和Entity Framework

    葡萄牙的一位开发者 Ricardo Peres 最近发布了一篇文章,以看起来无偏见的形式对领先的两种 .NET ORM:NHibernate 和 Entity Framework 进行了比较. 我们建 ...

  2. Java 中常用缓存Cache机制的实现《二》

    所谓缓存,就是将程序或系统经常要调用的对象存在内存中,一遍其使用时可以快速调用,不必再去创建新的重复的实例.这样做可以减少系统开销,提高系统效率. AD: Cache 所谓缓存,就是将程序或系统经常要 ...

  3. Install OE and BitBake

    LeapFrog Explorers: Install OE and BitBake - eLinux.org     http://elinux.org/LeapFrog_Explorers:_In ...

  4. iOS 利用不等的constraint实现布局间隔调整

    以前也写过一篇文章,说的也是如何利用constraint调整布局间隔,今天说另一种方法,实现简单,但有一定局限. 先看图 这里只截取了一部分,这个页面在4寸是可以显示的,但是如果不把控件间的间距缩小, ...

  5. salt安装与简单使用---基于centos6.5

    1.简介SaltStack 是一个服务器基础架构集中化管理平台,具备配置管理.远程执行.监控等功能,一般可以理解为简化版的puppet和加强版的func.SaltStack 基于Python语言实现, ...

  6. codeforces 518B. Tanya and Postcard 解题报告

    题目链接:http://codeforces.com/problemset/problem/518/B 题目意思:给出字符串 s 和 t,如果 t 中有跟 s 完全相同的字母,数量等于或者多过 s,就 ...

  7. SpringMVC java.lang.IllegalStateException: Neither BindingResult nor plain target object for bean name

    当跳转到一个含有form表单的页面的时候 如<form:form commandName="useCarInfo" 必须要new一个useCarInfo的同名实例给jsp来接 ...

  8. LeetCode 217 Contains Duplicate

    Problem: Given an array of integers, find if the array contains any duplicates. Your function should ...

  9. 【XLL 文档翻译】【第2部分】C API 回调函数 Excel4, Excel12

    Excel4 和 Excel12 函数使得 DLL 可以调用 Excel 工作表函数.宏表函数.命令.XLL特定函数或命令.最近的一些 Excel 版本都支持 Excel12 函数.这两个函数支持下面 ...

  10. asp.net 后台获取input的值

    前台:<input id="test" value="" runat="server" /> 只要架上runat="s ...