2900 - 合并电量

题目描述

机器人公司研发了一种新型的电池,用于为该公司的机器人提供电力。

每块电池出厂时,默认有 1 个单位的电量,但电池容量没有上限,可以充入任意单位的电量。用户如果买了多块电池,在无法直接充电的情况下,为了提升某块电池的电量,也可以将一块电池的电量导入到另一块电池中,合并两块电池的电量。

但该电池设计有一定的缺陷,如果要将一块电池的电量导入的另一块电池中,必须保证两块电池的电量相等。导入过程没有任何电量损耗。

A 购买了 N 块电池,每块电池都只有出厂时的 1 个单位的电量。他准备带机器人外出,机器人的电池舱容量有限,只能容纳 K 块电池。

A 定通过通过合并电池电量的方式,得到不超过 K有电的电池

A 发现,在有些情况下,他无法实现这个目标。比如如果有 3 块刚出厂的电池,他想合并出 1 块有电的电池,这就无论如何也无法实现。

聪明的小 A 想到,他可以通过再购买一些电池的方法,来完美的解决这个问题。

请编程输出小 A 最少需要购买多少块刚出厂的电池,才能实现他的目标。

输入

输入两个整数 NK

输出

输出文件包含一个非负整数,表示最少需要购买的电池数量。

样例

输入

3 1

输出

1

输入

13 2

输出

3

输入

1024 1

输出

0
说明

样例 1 解释

N=3 K=1,再买 1 块电池,有 4 块电池。

先将前 2 个电池电量合并,得到 1 块电量为 2 的电池。

再将后 2 个电池电量合并,得到 1 块电量为 2 的电池。

最后将 2 个电量为 2 的电池合并,得到 1 块电量为 4 的电池。

样例输入 4

100000 3

样例输出 4

352

数据范围

对于 10\% 的数据,满足 1 \le N \le 20K=2

对于 100\% 的数据,满足 1 \le N \le 10^91 \le K \le 1000

标签
题目参数
时间限制 1 秒
内存限制 512 MB
提交次数 0
通过人数 0
金币数量 1 枚
难度 基础


上一题 下一题