1058-Tom and Jerry
2013-11-22 09:24
85 查看
描述
Tom和Jerry在10*10的方格中:
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......*
...*.*....
.*.*......
C=Tom(猫) M=Jerry(老鼠) *=障碍物 .=空地
他们各自每秒中走一格,如果在某一秒末他们在同一格中,我们称他们“相遇”。注意,“对穿”是不算相遇的。 他们移动方式相同:平时沿直线走,下一步如果会走到障碍物上去或者出界,就用1秒的时间做一个右转90度。一开始他们都面向北方。 编程计算多少秒以后他们相遇。
输入
10行,格式如上
输出
相遇时间T。如果无解,输出-1。
样例输入
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......* .
..*.*....
.*.*......
样例输出
49
Tom和Jerry在10*10的方格中:
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......*
...*.*....
.*.*......
C=Tom(猫) M=Jerry(老鼠) *=障碍物 .=空地
他们各自每秒中走一格,如果在某一秒末他们在同一格中,我们称他们“相遇”。注意,“对穿”是不算相遇的。 他们移动方式相同:平时沿直线走,下一步如果会走到障碍物上去或者出界,就用1秒的时间做一个右转90度。一开始他们都面向北方。 编程计算多少秒以后他们相遇。
输入
10行,格式如上
输出
相遇时间T。如果无解,输出-1。
样例输入
*...*.....
......*...
...*...*..
..........
...*.C....
*.....*...
...*......
..M......* .
..*.*....
.*.*......
样例输出
49
#include <iostream> using namespace std; char s[12][12]; void meet(int &x,int &y,int &f) { if(f==1) { if(s[x-1][y]!='*') x--; else { f=2; return; } } if(f==2) { if(s[x][y+1]!='*') y++; else { f=3; return; } } if(f==3) { if(s[x+1][y]!='*') x++; else { f=4; return; } } if(f==4) { if(s[x][y-1]!='*') y--; else { f=1; return; } } } int main() { //freopen("a.txt","r",stdin); int i,j,t=0; int a,b,c,d; for(i=-1;i<11;i++) for(j=-1;j<11;j++) s[i][j]='*'; for(i=0;i<10;i++) for(j=0;j<10;j++) { cin>>s[i][j]; if(s[i][j]=='C') { a=i; b=j; } if(s[i][j]=='M') { c=i; d=j; } } int f1=1,f2=1; while(a!=c||b!=d) { meet(a,b,f1); meet(c,d,f2); t++; if(t>100000) { t=-1; break; } } cout<<t<<endl; return 0; }
相关文章推荐
- 解题报告 ch1 字符串问题
- 桥接模式(把接口和实现分为两个继承树,而不是将实现来继承接口,造成实现和接口耦合
- c3p0-config.xml配置文件 完成查询数据库的流程
- asp.net 自动遍历实体类
- .net asp.net自定义错误页
- 在Iframe中获取父窗口中表单的值(示例代码)
- C#反射
- 尼尔森F形状网页浏览模式
- PetShop的系统架构设计
- 看过《大湿教我写.net通用权限框架(1)之菜单导航篇》之后发生的事
- HDU 1208 Pascal's Travels
- Android SD卡路径问题以及如何获取SDCard 内存
- 写在博客第一篇的话
- OCP-1Z0-052-V8.02-8题
- PHP 魔术方法__set() __get() 方法详解
- App Store上评论的链接
- PHP 魔术方法__set() __get() 方法详解
- Spring 3种注入方式
- Java虚拟机(JVM)参数配置说明
- sqlplus / as sysdba ORA-012560:TNS:协议适配器错误