P23512 [AtCoder] Problem Statement
普及
题目描述

Problem Statement

Snuke has come to Seisu-ya (integer shop) with an integer B in his hand.
In Seiyu-ya, you can exchange your integer for another integer by paying money.
More specifically, you can use the following two services any number of times in any order:

  • Pay 1 yen (the currency of Japan) to multiply your integer by -1.
  • Pay 2 yen to subtract 1 from your integer.

How many integers are there that Snuke can get for at most C yen?

Input

Input is given from Standard Input in the following format:
B C

Output

Print the answer.

Constraints

  • -$10^{18}\le B \le 10^{18}$
  • $1\le C \le 10^{18}$
  • All values in input are integers.

Sample Input 1

11 2

Sample Output 1

3

There are three numbers that Snuke can get: -11, 10, and 11, as follows:

  • by doing nothing, he can get 11 for 0 yen;
  • by multiplying 11 by -1, he can get -11 for 1 yen;
  • by subtracting 1 from 11, he can get 10 for 2 yen.

Sample Input 2

0 4

Sample Output 2

4

There are four numbers that Snuke can get: -2, -1, 0, and 1, as follows:

  • by doing nothing, he can get 0 for 0 yen;
  • by subtracting 1 from 0, he can get -1 for 2 yen;
  • by subtracting 1 from 0 and then multiplying by -1, he can get 1 for 3 yen;
  • by subtracting 1 from 0 and then subtracting 1 again, he can get -2 for 4 yen.

Sample Input 3

112 20210213

Sample Output 3

20210436

Sample Input 4

-211 1000000000000000000

Sample Output 4

1000000000000000422

输入格式

见题面 Input 部分

输出格式

见题面 Output 部分

样例输入
11 2
样例输出
3