首页 > 其他分享 >求x到y的最少计算次数

求x到y的最少计算次数

时间:2022-12-18 13:22:10浏览次数:42  
标签:一层 temp int 次数 最少 que 计算 100 size

不太清楚为什么会是BFS和DFS

哦,这样,从x出发,每次“+1”、“-1”、“*2”三条路径

广度优先,一层一层往下走,同时一层一层向下构造,得到第一个等于y的,层数就是结果

    public static void main(String[] args) throws IOException {

        Scanner scanner = new Scanner(System.in);
        String[] s = scanner.next().split(",");
        int x = Integer.parseInt(s[0]);
        int y = Integer.parseInt(s[1]);
        Queue<Integer> que = new ArrayDeque<>();
        int level = -1, size;
        que.add(x);
        while (!que.isEmpty()) {
            level++;
            size = que.size();
            for (int i = 0; i < size; i++) {
                int temp = que.peek();
                que.remove();
                if (temp == y) {
                    que.clear();
                    break;
                }
                if (temp + 1 <= 100) que.add(temp + 1);
                if (temp - 1 >= -100) que.add(temp - 1);
                if (2 * temp >= -100 && 2 * temp <= 100) que.add(2 * temp);
            }
        }
        System.out.println(level);
    }

就是不喜欢用Java做题,怎么看都不优雅

但是我尝试-100,100这个测试用例的时候就直接OOM了

考虑动态规划?

标签:一层,temp,int,次数,最少,que,计算,100,size
From: https://www.cnblogs.com/yaocy/p/16990136.html

相关文章

  • 股票的主动资金实时计算和历史分析
    一.什么是主动资金    股票交易委托买入和卖出都有5个档位,主动出钱以委托卖出的价格买入股票,股票价格会上涨,主动以委托买入的价格卖出股票,股票会下跌;这种主动以委托价......
  • 200010 计算墙的体积面积砖用量已知长宽高
    点击查看代码<?phpheader('Content-Type:text/html;charset=utf-8');define('ROOT',$_SERVER['DOCUMENT_ROOT']);includeROOT.'/assets/php/head.php';$tit='......
  • Qt实现计算器
    #include<QtWidgets>#include<cmath>#include"button.h"#include"calculator.h"Calculator::Calculator(QWidget*parent):QWidget(parent){sumInMemory=0.0......
  • 计算机网络(自顶向下)学习笔记)——路由选择算法
    第五章—路由选择算法5.1、路由的概念路由:按照某种指标(传输延迟,所经过的站点数目等)找到一条从源节点到目标节点的较好路径较好路径:按照某种指标较小的路径指标:......
  • 200009 计算板的土方量和钢筋量已知集中标注
    点击查看代码<?phpheader('Content-Type:text/html;charset=utf-8');define('ROOT',$_SERVER['DOCUMENT_ROOT']);includeROOT.'/assets/php/head.php';$tit='......
  • 计算机算法设计与分析第一章总结
    1.1算法与程序算法是解决问题的一种方法或一个过程。严格地说,算法是由若干条指令组成的有穷序列,且满足下述4条性质。输入输出:至少产生一个量作为输出。确定性:每条指......
  • 根据业务模式和比例计算提成比例
    问题:根据A:B两列给定的条件,计算不同业务模式下不同比例对应的提成比例 解决方案:第一步,修改A:B两列数据如下图A:C 第二步:函数公式解决=LOOKUP(F3,OFFSET(B$2:C$2......
  • 『牛角书』鸿蒙基础计算器
    简介这是我自己的鸿蒙期末考查大作业,通过一学期课程的学习,研究出来的一些成果,代码还有很多需要优化的地方,本文内容仅为利用组件简单的计算器页面。成果展示开发思路计算器......
  • 计算机毕设——中文分词方法研究与实现
    1.课题意义及目标中文分词技术不断发展,各种中文分词系统层出不穷。中文分词技术应用也原来越广泛。如搜索引擎的应用、语音识别系统、机器翻译、自动分类校对等。学生应通过......
  • 计算机毕设——手机天气预报系统
    目录摘要1需求分析2一、开发背景2二、项目需求分析2总体设计2一、系统规划2二、系统功能界面3设置预报城市界面:3天气显示界面:4Widget桌面小部件界面:5三.设计目标6系统设计6......