小明每天都要练功,练功中的重要一项是梅花桩。

  小明练功的梅花桩排列成 n 行 m 列,相邻两行的距离为 1,相邻两列的距离也为 1。

  小明站在第 1 行第 1 列上,他要走到第 n 行第 m 列上。小明已经练了一段时间,他现在可以一步移动不超过 d 的距离(直线距离)。

  小明想知道,在不掉下梅花桩的情况下,自己最少要多少步可以移动到目标。

输入格式

  输入的第一行包含两个整数 n, m,分别表示梅花桩的行数和列数。

  第二行包含一个实数 d(最多包含一位小数),表示小明一步可以移动的距离。

输出格式

  输出一个整数,表示小明最少多少步可以到达目标。

样例输入

3 4

1.5

样例输出

3

10评测用例规模与约定

  对于 30% 的评测用例,2 <= n, m <= 20,1 <= d <= 20。

  对于 60% 的评测用例,2 <= n, m <= 100,1 <= d <= 100。

  对于所有评测用例,2 <= n, m <= 1000,1 <= d <= 100。

PS:

这里的搜索肯定是找半径搜索,肯定是半径搜索的最右下面的,

下面那个图,看一下,我的y2是最靠下的位置,x2++,如果超出了半径范围,

那么y2就往上走,x2++的范围继续搜索,如果没有超过半径范围,x2++就继续向右面找

然后在超过半径,就y2–往上走,知道y2<y1,

因为他是右下走,所以你只需要考虑右下方向的路径

不好意思,实在是不清楚怎么把他转过来

package 蓝桥杯省模拟赛_高职组;

import java.util.ArrayList;
import java.util.List;
import java.util.Scanner; public class 梅花桩 {
public static void main(String[] args) {
List<Integer> list_y = new ArrayList<Integer>();
List<Integer> list_x = new ArrayList<Integer>();
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
int m = sc.nextInt();
double d = sc.nextDouble();
sc.close();
int[][] map = new int[n+1][m+1];
list_x.add(1);
list_y.add(1);
while (list_x.size()!=0){
int x1 =list_x.remove(0);
int y1=list_y.remove(0);
int x2=x1;
int y2=y1+(int)d;
if((n-x1)*(n-x1) + (m-y1)*(m-y1) <= d*d)
{
map[n][m] = map[x1][y1] + 1;
break;
}
while (x2 <= n && y2 >= y1 && y2 <= m){
if((x2 - x1) * (x2 - x1) + (y2 - y1) * (y2 - y1) <= d * d && map[x2][y2] == 0)
{
list_x.add(x2);
list_y.add(y2);
map[x2][y2] = map[x1][y1] + 1;
x2 ++;
}
else y2 --;
}
}
System.out.println(map[n][m]);
}
}

Java 第十一届 蓝桥杯 省模拟赛 梅花桩的更多相关文章

  1. Java 第十一届 蓝桥杯 省模拟赛 小明的城堡

    小明用积木搭了一个城堡. 为了方便,小明在搭的时候用的是一样大小的正方体积本,搭在了一个 n 行 m 列的方格图上,每个积木正好占据方格图的一个小方格. 当然,小明的城堡并不是平面的,而是立体的.小明 ...

  2. Java 第十一届 蓝桥杯 省模拟赛 元音字母辅音字母的数量

    给定一个单词,请计算这个单词中有多少个元音字母,多少个辅音字母. 元音字母包括 a, e, i, o, u,共五个,其他均为辅音字母. 输入格式 输入一行,包含一个单词,单词中只包含小写英文字母. 输 ...

  3. Java 第十一届 蓝桥杯 省模拟赛 递增序列

    问题描述 在数列 a[1], a[2], -, a[n] 中,如果 a[i] < a[i+1] < a[i+2] < - < a[j],则称 a[i] 至 a[j] 为一段递增 ...

  4. Java 第十一届 蓝桥杯 省模拟赛 最大的元素距离

    在数列 a_1, a_2, -, a_n中,定义两个元素 a_i 和 a_j 的距离为 |i-j|+|a_i-a_j|,即元素下标的距离加上元素值的差的绝对值,其中 |x| 表示 x 的绝对值. 给定 ...

  5. Java 第十一届 蓝桥杯 省模拟赛 洁净数

    洁净数 小明非常不喜欢数字 2,包括那些数位上包含数字 2 的数.如果一个数的数位不包含数字 2,小明将它称为洁净数. 请问在整数 1 至 n 中,洁净数有多少个? 输入格式 输入的第一行包含一个整数 ...

  6. Java 第十一届 蓝桥杯 省模拟赛 第十层的二叉树

    一棵10层的二叉树,最多包含多少个结点? 注意当一棵二叉树只有一个结点时为一层. 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余 ...

  7. Java 第十一届 蓝桥杯 省模拟赛 70044与113148的最大公约数

    问题描述 70044与113148的最大公约数是多少? 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分. pac ...

  8. Java 第十一届 蓝桥杯 省模拟赛 19000互质的个数

    问题描述 不超过19000的正整数中,与19000互质的数的个数是多少? 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将 ...

  9. Java 第十一届 蓝桥杯 省模拟赛十六进制转换成十进制

    问题描述 请问十六进制数1949对应的十进制数是多少?请特别注意给定的是十六进制,求的是十进制. 答案提交 这是一道结果填空的题,你只需要算出结果后提交即可.本题的结果为一个整数,在提交答案时只填写这 ...

随机推荐

  1. SwiftUI - 一起来仿写微信APP之一首页列表视图

    简介 最近在学习 SwiftUI ,我一般都是先去学习界面布局,所以就想着仿写一下经常使用的软件的界面,所以先拿微信开刀.因为不想一次性发太多的内容,所以只好将主题分解,一部分一部分地去讲,接下来我们 ...

  2. 简述SpringCloud底层原理

    目录 一.业务场景介绍 二.Spring Cloud核心组件:Eureka 三.Spring Cloud核心组件:Feign 四.Spring Cloud核心组件:Ribbon 五.Spring Cl ...

  3. Bootstrap:Bootstrap_table第一篇:快速用bootstrap_table(支持参数)筛选并展示数据,固定表格前几列,实现表格单元格编辑

    1.准备好css和js文件 <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstr ...

  4. JS理论:调用栈、事件循环、消息队列(也叫任务队和回调队列)、作业队列(微任务队列)

    一:调用栈是个什么鬼东西,它具有栈的属性--后进先出 先看一段简单的JS代码: const second = function(){ console.log('hello there'); } con ...

  5. js canvas压缩图片和jQuery ajax上传图片简单demo

    原来用的插件,里面东西太乱了,一会jq,一会原生js,本来原生js就不熟,看起来更难受,而且感觉好多东西都是没用的,而且后端php转存文件一直不是很熟悉,正好一起整理一下.就是很简单的一个demo,如 ...

  6. jquery-----ajax的几种方法

    $.get(url,function(data,status){ if(status == 'success'){ layer.msg(data,{shift:1,time:2000},functio ...

  7. JavaScript之ES5的继承

    自从有了ES6的继承后,ES5的继承也退出了舞台,在实际开发也不会用得着: 先看看ES6的继承 class Father{ constructor(a){ console.log(a); } play ...

  8. js使用经验--if...else简化

    目的 在项目中,if else语句如果用得很多,特别是嵌套,代码不美观,阅读性不好.所以的话,用其他的方式简化替换if...else...就很有必要. 简化的作用就是赠人玫瑰,手留余香.对自己对项目对 ...

  9. Unity Singleton 单例类(Unity3D开发)

    一.添加单例模板类 using UnityEngine; public class Singleton<T> : MonoBehaviour where T : MonoBehaviour ...

  10. RabbitMQ应用示例

    更多详情参考官方文档:https://www.rabbitmq.com/tutorials/tutorial-six-python.html 参考博客:https://blog.csdn.net/we ...