# 倒水

## 题目描述

一天，CC 买了 $N$ 个容量可以认为是无限大的瓶子，开始时每个瓶子里有 $1$ 升水。接着 CC 发现瓶子实在太多了，于是他决定保留不超过 $K$ 个瓶子。每次他选择两个当前含水量相同的瓶子，把一个瓶子的水全部倒进另一个里，然后把空瓶丢弃。（不能丢弃有水的瓶子）

显然在某些情况下 CC 无法达到目标，比如 $N = 3$、$K = 1$。此时 CC 会重新买一些新的瓶子（新瓶子容量无限，开始时有 $1$ 升水），以达到目标。

现在 CC 想知道，最少需要买多少新瓶子才能达到目标呢？

## 输入格式

一行两个正整数 $N, K$（$1 \le N \le 2 \times 10^9$，$K \le 1000$）。

## 输出格式

一个非负整数，表示最少需要买多少新瓶子。

## 样例 #1

### 样例输入 #1

```
3 1
```

### 样例输出 #1

```
1
```

## 样例 #2

### 样例输入 #2

```
13 2
```

### 样例输出 #2

```
3
```

## 样例 #3

### 样例输入 #3

```
1000000 5
```

### 样例输出 #3

```
15808
```