比赛场次 73
比赛名称 20101105
比赛状态 已结束比赛成绩
开始时间 2010-11-05 19:00:00
结束时间 2010-11-05 22:00:00
开放分组 全部用户
注释介绍
题目名称 倒水
输入输出 watera.in/out
时间限制 1000 ms (1 s)
内存限制 128 MiB
测试点数 10 简单对比
用户 结果 时间 内存 得分
Gravatarmaxiem AAAAAAAAAA 0.000 s 0.00 MiB 100
GravatarAchilles AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatarbelong.zmx AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatardonny AAAAAAAAAA 0.000 s 0.00 MiB 100
Gravatar苏轼 AAAAAAAAAA 0.000 s 0.00 MiB 100
GravatarZhouZn1 WAWWTTTWTA 0.000 s 0.00 MiB 20

倒水

★   输入文件:watera.in   输出文件:watera.out   简单对比
时间限制:1 s   内存限制:128 MiB

【题目描述】

一天, CC 买了 N 个容量可以认为是无限大的瓶子,开始时每个瓶子里有 1 升水。接着 CC

发现瓶子实在太多了,于是他决定保留不超过 K 个瓶子。每次他选择两个当前含水量相同的瓶子,把一个瓶子的水全部倒进另一个里,然后把空瓶丢弃。(不能丢弃有水的瓶子)

显然在某些情况下 CC 无法达到目标,比如 N=3,K=1 。此时 CC 会重新买一些新的瓶子(新瓶子容量无限,开始时有 1 升水),以达到目标。

现在 CC 想知道,最少需要买多少新瓶子才能达到目标呢?

【输入文件】

一行两个正整数, N,K ( 1<=N<=10^9,K<=1000 )。

【输出文件】

一个非负整数,表示最少需要买多少新瓶子。

【输入样例1】

3 1

【输出样例1】

1

【输入样例2】

13 2

【输出样例2】

3

【输入样例3】

1000000 5

【输出样例3】

15808

【数据规模】

对于 50% 的数据, N<=10^7

对于 100% 的数据如题目。