一 原问题链接

3278 -- Catch That Cowhttp://poj.org/problem?id=3278

二 输入和输出

1 输入

两个数,第1个数代表农夫的位置,第2个数代表牛的位置。

2 输出

农夫抓牛的最小步数

三 输入和输出样例

1 输入样例

5 17

2 输出样例

4

四 代码

package graph.poj3278;import java.util.Scanner;public class POJ3278 {static private int n;static private int k;/*** 功能描述:深度优先算法** @param t 牛的位置* @return 需要的部署* @author cakin* @date 2022/6/28* @description:*/static int dfs(int t) {if (t <= n) // 人后退步数return n - t;if (t % 2 != 0) // 人在 t+1 位置,再走一步到牛的位置, 人在 t-1 位置,再走一步到牛的位置return Math.min(dfs(t + 1) + 1, dfs(t - 1) + 1);else // 人在 t/2 的位置,再走一步到牛的位置,人直接从 n 走到 t的步数return Math.min(dfs(t / 2) + 1, t - n);}public static void main(String[] args) {Scanner scanner = new Scanner(System.in);n = scanner.nextInt();k = scanner.nextInt();int ans = 0;if (n == 0) { // 特殊情况判断,很重要n = 1;ans = 1;}ans += dfs(k);System.out.println(ans);}
}

五 测试结果

绿色为输入,白色为输出

深度优先搜索实现抓牛问题相关推荐

  1. 【牛客 - 剑指offer】JZ12 矩阵中的路径 深度优先搜索DFS Java实现

    文章目录 剑指offer题解汇总 Java实现 本题链接 题目 题目主要信息 方案 深度优先搜索 剑指offer题解汇总 Java实现 https://blog.csdn.net/guliguligu ...

  2. 一文搞懂深度优先搜索、广度优先搜索(dfs、bfs)

    前言 你问一个人听过哪些算法,那么深度优先搜索(dfs)和宽度优先搜索(bfs)那肯定在其中,很多小老弟学会dfs和bfs就觉得好像懂算法了,无所不能,确实如此,学会dfs和bfs暴力搜索枚举确实利用 ...

  3. LeetCode算法总结-回溯法与深度优先搜索

    转载自  LeetCode算法总结-回溯法与深度优先搜索 回溯法(探索与回溯法)是一种选优搜索法,又称为试探法,按选优条件向前搜索,以达到目标.但当探索到某一步时,发现原先选择并不优或达不到目标,就退 ...

  4. 搜索 —— 深度优先搜索(DFS)

    [概述] 深度优先搜索,是从初始状态起,利用一定的规则生成搜索树,寻找下一层任一个结点,检查是否出现目标状态,若未出现,以此状态利用规则生成再下一层任一个结点,再检查,重复过程一直到叶节点(即不能再生 ...

  5. 深度优先搜索(模板使用)

    深度优先搜索(模板使用) 模板出处 关于模板出处,来自这里 本文仅通过例题对模板的使用进行说明. #include<cstdio> #include<cstring> #inc ...

  6. 持续理解DFS(深度优先搜索)

    目录方便大家浏览: 博客的目的: 对DFS的概念理解: DFS的用途: 需要用到DFS的例题(来自力扣): DFS在树中的一些应用: DFS在数组中的一些应用: Last 博客的目的: 博主最近在刷有 ...

  7. 【算法】广度优先搜索(BFS)和深度优先搜索(DFS)

    https://blog.csdn.net/raphealguo/article/details/7523411 https://blog.csdn.net/qq_41681241/article/d ...

  8. 基础算法·深度优先搜索

    祝食用愉快XD 题目链接 (是一道胡乱出的题) U56815 来走迷宫鸭! 解题思路 深度优先搜索,如果能不碰墙地到达右下角的出口,就把旗子立起来表示找到了出口. 什么?你没听过深度优先搜索 没事,且 ...

  9. [C] 深度优先搜索解决连通块/染色问题——求岛的个数

    本文介绍用DFS解决连通块个数问题 有关dfs的介绍见另外一篇:不撞南墙不回头--深度优先搜索 例题 宝岛探险 题目描述 一个小岛由一个主岛和一些复附属岛屿组成,该岛使用一个二维矩阵表示,其中数字表示 ...

最新文章

  1. Javascript鼠标滚轮事件兼容写法
  2. jqmobi快速开始(翻译)
  3. 搜索旋转排序数组—leetcode31
  4. java 获取所有带指定注解的类名_SXT DAY023 反射和注解
  5. 重磅!清华商汤开源CVPR2018超高精度人脸对齐算法LAB
  6. Javascript正则
  7. 毅航产品—模拟载板I
  8. Java判断文件编码格式
  9. DPDK设备驱动的匹配和初始化
  10. 面试官:Java的重写和重载有什么区别?
  11. 360安全杀毒软件扫描计算机病毒,360木马查杀能扫描病毒吗
  12. c语言网页版在线编译器_简单好用的网页版在线公式编辑器
  13. 中国崛起让西方乱了阵脚
  14. Leetcode刷题笔记 35.搜索插入位置(详细说明二分查找)
  15. 云上领跑 智慧贵州 中软国际与云上贵州深度合作助力政府数字化转型
  16. NVIDIA、CUDA、CUDNN、PyTorch安装吐血整理!!!
  17. Solr参数mm详解
  18. 从0到ros2玩rmf
  19. 《如何有效阅读一本书》书评
  20. WIN7 64位 配置JDK1.7的环境变量(百度上那么多坑爹货,乱搞真浪费时间)

热门文章

  1. js打印指定html页面(调用浏览器的打印功能)
  2. mac系统安装yarn,配置淘宝镜像失败的问题
  3. 分享一个好用的第三方登录框架
  4. IDA 插件 idbtopat.plw的用途
  5. java毕业设计网上书城系统mybatis+源码+调试部署+系统+数据库+lw
  6. Flutter Rive 多状态例子
  7. hdfs上传文件没有权限写入的问题解决put: Permission denied: user=root, access=WRITE
  8. html css 科技感异形边框,CSS边框外的小三角形+阴影效果的实现。
  9. css3与页面布局-概要,选择器,特殊性,刻度单位
  10. Flutter 、Vue、React Native 、Weex哪个好