蓝桥杯 ALGO-46 算法训练 Hanoi问题

栏目: 编程工具 · 发布时间: 7年前

内容简介:问题描述输入格式输入数据仅有一行,包括两个数N和M(0<=M<=N<=8)

问题描述

如果将课本上的Hanoi塔问题稍做修改:仍然是给定N只盘子,3根柱子,但是允许每次最多移动相邻的M只盘子(当然移动盘子的数目也可以小于M),最少需要多少次?

输入格式

输入数据仅有一行,包括两个数N和M(0<=M<=N<=8)

输出格式

仅输出一个数,表示需要移动的最少次数

样例输入

分析:数学问题,递归得出公式f(n) = 2f(n)+1, 然后通过数学推算得通项公式为 f(n) = 2^n-1

#include <iostream>
#include <cmath>
using namespace std;
int main() {
    int n, m, ans = 0;
    cin >> n >> m;
    if (n % m == 0) n /= m;
    else n = n / m + 1;
    cout << (int) pow(2, n) - 1;
    return 0;
}
❤❤点击这里 -> 订阅PAT、蓝桥杯、GPLT天梯赛、LeetCode题解离线版❤❤ 蓝桥杯 ALGO-46 算法训练 Hanoi问题

以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

精通CSS

精通CSS

Andy Budd / 陈剑瓯 / 人民邮电出版社 / 2006 / 39.00

本书将最有用的CSS技术汇总在一起,在介绍基本的CSS概念和最佳实践之后,讨论了核心的CSS技术,例如图像、链接、列表操纵、表单设计、数据表格设计以及纯CSS布局。每一章内容由浅入深,直到建立比较复杂的示例。之后本书用两章讨论招数、过滤器、bug和bug修复,最后由Simon Collison和Cameron Moll两位杰出的CSS设计人员,将书中讨论的许多技术组合起来,给出了两个实例研究。本书......一起来看看 《精通CSS》 这本书的介绍吧!

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具