farmer and cow 广搜 java
来源:互联网 发布:网络传播 传统传播 编辑:程序博客网 时间:2024/06/04 08:12
```import java.util.*;public class Main { private static int [] array = new int[100002] ; //每个数组的值存放农民到该点的最短距离 private static int count = 0 ; private static Queue<Integer> queue = new LinkedList<Integer>() ; public static void main(String [] args){ int farmer = 0 ; int cat = 0 ; Scanner input = new Scanner(System.in) ; while(input.hasNext()){ farmer = input.nextInt() ;// 读入农民的位置 cat = input.nextInt() ; //读入奶牛的位置 if(farmer < cat ){ //如果农民在前(位置较小),奶牛在后(位置较大) queue.add(farmer) ; while(!queue.isEmpty()){ int index = queue.remove() ; if(index == cat){ break ; } //向前一步走,如果下一个节点的值大于当前节点值+1 则更新下一个节点值 if((index + 1 >= 0 )&&(index + 1 <= 100000)&& (array[index+1] == 0 || array[index+1] > array[index] + 1)){ array[index + 1] = array[index] + 1 ; queue.add(index+1); } //向后一步走,如果下一个节点的值大于当前节点值+1 则更新下一个节点值 if((index - 1 >= 0 )&&(index - 1 <= 100000)&& (array[index - 1] == 0 || array[index-1] > array[index] + 1)){ array[index - 1] = array[index] + 1 ; queue.add(index - 1) ; } //穿越走,如果下一个节点的值大于当前节点值+1 则更新下一个节点值 if((index * 2 <= 100000)&&(index * 2 > 0)&& (array[index*2] == 0 || array[index*2] > array[index] + 1)){ array[index * 2]= array[index] + 1 ; queue.add(index * 2 ) ; } } System.out.println(array[cat]); Arrays.fill(array, 0);// 输出结果后,要把数组置0 , 为下一组数据做准备 queue.clear(); //清空队列 } else{ // 奶牛在前,农民在后 System.out.println(farmer - cat); } } }}
0 0
- farmer and cow 广搜 java
- 广搜基础 Farmer John
- 广搜:Catch That Cow
- poj_3278_Catch That Cow广搜
- PKU3278 Catch That Cow 基础广搜
- pku 3278 Catch That Cow(广搜)
- HLG 1012 Catch that cow (广搜)
- POJ 3728 Catch That Cow (广搜)
- HDU2717 Catch That Cow 【广搜】
- POJ3278 Catch That Cow(广搜BFS)
- poj3278-catch that cow(bfs广搜)
- Catch That Cow 广搜 BPS
- POJ_3278_ Catch That Cow _广搜
- poj 3278 Catch That Cow 广搜
- POJ3278 Catch That Cow(广搜BFS)
- 简单广搜:Catch That Cow
- -----广搜 POJ 3278-Catch That Cow
- hdu1312 Red and Black_广搜 dfs(java版本)
- jsp request跳转页面和response跳转页面
- GB2312的中文编码表
- iOS 在storyboard/xib中设置UIView的圆角等属性
- event.preventDefault方法的使用
- Dagger2 学习笔记
- farmer and cow 广搜 java
- AI设计彭罗斯悖论三角教程
- Java NIO Path
- java环境配置
- [好文推荐] 给年轻程序员的8条建议
- Java NIO Files
- 36个Android开发常用代码片段
- sysstat的介绍
- WebView获取当前网页的页面元素