poj3278广搜
来源:互联网 发布:linux系统管理员招聘 编辑:程序博客网 时间:2024/05/01 02:21
import java.io.BufferedInputStream;import java.util.LinkedList;import java.util.Scanner;public class Main{public static final int MAX=200000;public static void main(String[] args){Scanner scan= new Scanner(new BufferedInputStream(System.in));if(scan.hasNext()){int n=scan.nextInt();int k=scan.nextInt();System.out.println(catchTheCow(n,k));}}public static int catchTheCow(int n,int k){if(n==k){return 0;}LinkedList queue = new LinkedList();boolean[] visited = new boolean[MAX+5];int[] minutes = new int[MAX+5];visited[n] = true;queue.add(n);while(!queue.isEmpty()){int current = (int) queue.removeFirst();for(int i=0;i<3;i++){int next=current;if(i==0){next++;}else if(i==1){next--;}else if(i==2){next<<=1;}if(next<0||next>MAX){continue;}if(!visited[next]){queue.add(next); minutes[next]=minutes[current]+1;}if(next==k){return minutes[k];}}}return 0;}}
题目的要求是求到达目标位置的最少步数,根据题目特点,很显然应该用广度优先搜索来解决。根据广度搜索的特点,广搜最先扫描到得点所需要的步数即为最小步数。
0 0
- poj3278基本广搜
- poj3278(广搜剪枝)
- poj3278广搜
- 广搜入门,poj3278
- poj3278广搜
- poj3278广搜
- POJ3278 Catch That Cow(广搜BFS)
- poj3278-catch that cow(bfs广搜)
- POJ3278 Catch That Cow(广搜BFS)
- POJ3278
- POJ3278
- POJ3278
- poj3278
- poj3278
- poj3278
- POJ3278
- POJ3278
- poj3278
- 简单的天气预报 (五)
- uva 111 History Grading
- Web_PHP_get_magic_quotes_gpc()函数;
- MMS技术及其在电力系统通信协议中的应用研究
- 流媒体技术原理
- poj3278广搜
- 手机流媒体技术
- Dijkstra[两种邻接表+优先队列优化]
- iOS之UINavigationController与UITabBarController的使用
- 让UILabel的文字顶部对齐
- S2SH搭建Struts2报错
- 1、说到Android的屏幕适配,首当其冲的就是图片的适配
- 零基础学习hadoop到上手工作线路指导(初级篇)
- poj1942--Paths on a Grid(组合篇4)