HDU 4740——The Donkey of Gui Zhou
2015-07-22 17:18
489 查看
题意:驴跟老虎一起走,问什么时候能相遇
题目的意思是在一个地方只能转一次弯。。坑了好长时间
代码如下:
题目的意思是在一个地方只能转一次弯。。坑了好长时间
代码如下:
[code]#include <cstring> #include <stdio.h> #include <algorithm> #include <iostream> #include <cmath> #include <map> #include <string> #include <queue> #include <bitset> using namespace std; const int dir[4][2]={0,1,1,0,0,-1,-1,0}; int n; bool judge(int x,int y) { if(x<0||x>=n)return false; if(y<0||y>=n)return false; return true; } struct Pos { int x,y; }; Pos don; int dd; Pos tir; int td; bool visd[1005][1005]; bool vist[1005][1005]; bool solve() { memset(visd,0,sizeof(visd)); memset(vist,0,sizeof(vist)); visd[don.x][don.y]=1; vist[tir.x][tir.y]=1; bool cantir=1; bool candon=1; while(cantir||candon){ // cout<<don.x<<' '<<don.y<<' '<<tir.x<<' '<<tir.y<<endl; if(don.x==tir.x&&don.y==tir.y){ printf("%d %d\n",don.x,don.y);return true;} if(candon){ Pos to; to.x=don.x+dir[dd][0]; to.y=don.y+dir[dd][1]; if(judge(to.x,to.y)&&!visd[to.x][to.y]){ don.x=to.x;don.y=to.y; visd[don.x][don.y]=1; } else { dd=(dd+1)%4; to.x=don.x+dir[dd][0]; to.y=don.y+dir[dd][1]; if(judge(to.x,to.y)&&!visd[to.x][to.y]){ don.x=to.x;don.y=to.y; visd[don.x][don.y]=1; } else { candon=0; } // if(pre==dd){candon=0;break;} } } if(cantir){ Pos to; to.x=tir.x+dir[0]; to.y=tir.y+dir [1]; if(judge(to.x,to.y)&&!vist[to.x][to.y]){ tir.x=to.x;tir.y=to.y; vist[tir.x][tir.y]=1; } else { td=td-1; if(td == -1)td=3; to.x=tir.x+dir [0]; to.y=tir.y+dir [1]; if(judge(to.x,to.y)&&!vist[to.x][to.y]){ tir.x=to.x;tir.y=to.y; vist[tir.x][tir.y]=1; } else cantir=0; // if(pre==td){cantir=0;break;} } } if(don.x==tir.x&&don.y==tir.y){ printf("%d %d\n",don.x,don.y);return true;} } return false; } int main() { // freopen("data.txt","r",stdin); while(scanf("%d",&n)!=EOF&&n){ scanf("%d%d%d",&don.x,&don.y,&dd); scanf("%d%d%d",&tir.x,&tir.y,&td); if(!solve()){ puts("-1"); } } return 0; } 相关文章推荐
- [Elasticsearch] 过滤查询以及聚合(Filtering Queries and Aggregations) 5
- 【iOS学习】三、利用UIBezierPath绘图
- iPhone之为UIView设置阴影(CALayer的shadowColor,shadowOffset,shadowOpacity,shadowRadius,shadowPath属性)
- 1051. Pop Sequence
- easyui datagrid 的分页刷新按钮
- The different between ng-grid & ui-grid
- Cause: java.sql.SQLException: Column count doesn't match value count at row 1
- 全面解释java中StringBuilder、StringBuffer、String类之间的关系
- Snail—UI学习之初识
- UITableview优化随笔(1)-提高加载更多内容时的效率
- UIKit-3347.44.2/UICollectionView.m:3443
- UITableView滑动删除表格行(UITableViewCell)
- 【从零开始学NGUI 】 (三)Button
- UIFont设置
- HDU5288 OO’s Sequence
- Circular Sequence
- UVA 12563 Jin Ge Jin Que Hao
- 【备用,Tobe continue】stm32 设置顺序等,遇过的坎儿
- 【UIKit】-13-UIBarButtonItem - barButton
- 通知:NotificationCompat.Builde