我跳我跳我跳跳跳(bfs)
2014-02-15 19:30
148 查看
aacf
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
我跳我跳我跳跳跳
Time Limit: 1000ms Memory limit: 65536K 有疑问?点这里^_^
题目描述
有一条直线,上有n个点,编号从0到n-1。当小A站在s点处,每次可以往前跳到s+1,也可以往前跳到s-1(当s-1 >= 0时),也可以调到2*s处。现在问小A最少跳多少次才能跳到点e处。输入
多组输入。每组输入两个整数s,e(0 <= s,e <= 100,000)。n趋于无穷大。输出
输出小A从s跳到e的最小次数。示例输入
5 17
示例输出
4
#include <stdio.h> #include <stdlib.h> struct node { int x,c; }q[100003],t,f; int v[100005]; int tw[3]={-1,1}; int main() { int n,m,s,e,i; while(scanf("%d%d",&n,&m)!=EOF) { memset(v,0,sizeof(v)); t.x=n; t.c=0; e=0; s=0; q[e++]=t; v[t.x]=1; while(s<e) { t=q[s++]; if(t.x==m) { printf("%d\n",t.c); break; } for(i=0;i<3;i++) { if(i!=2) f.x=t.x+tw[i]; else f.x=t.x*2; if(f.x>=0&&f.x<=100000&&v[f.x]==0) { f.c=t.c+1; q[e++]=f; v[f.x]=1; } } } } return 0; }
相关文章推荐
- CSU 1259 跳跳 (bfs)
- POJ训练计划3278_Catch That Cow/SDUT2782_我跳我跳我跳跳跳(一维BFS)
- BFS给力的题目 CSU1259: 跳跳
- 2786 我跳我跳我跳跳跳【Bfs】
- 跳跳 (BFS) CUS 1259
- BFS——我跳我跳我跳跳跳
- 跳跳 (BFS) CUS 1259
- poj 3278 Catch That Cow (BFS剪枝)
- UESTC482-Charitable Exchange-bfs优先队列
- BFS_连连看游戏
- hdu 1973 Prime Path (bfs)
- 三维搜索(bfs)Dungeon Master
- POJ 3414 Pots(bfs)
- POJ_1426_Find The Multiple(BFS)
- hdu1240 Asteroids!(三维bfs水)
- BFS(普通队列与循环队列实现)---OJ 1241 油田问题
- poj1753(BFS+位存储)
- 例题6-20 UVa1599 Ideal Path(两次BFS)
- POJ3984 迷宫问题【BFS】
- SOJ 2409 The Best Seat in ACM Contest (BFS)