#abc153d. [abc153_d]Caracal vs Monster
[abc153_d]Caracal vs Monster
Problem Statement
Caracal is fighting with a monster.
The health of the monster is .
Caracal can attack by choosing one monster. When a monster is attacked, depending on that monster's health, the following happens:
- If the monster's health is , it drops to .
- If the monster's health, , is greater than , that monster disappears. Then, two new monsters appear, each with the health of .
( denotes the greatest integer not exceeding .)
Caracal wins when the healths of all existing monsters become or below.
Find the minimum number of attacks Caracal needs to make before winning.
Constraints
- All values in input are integers.
Input
Input is given from Standard Input in the following format:
Output
Find the minimum number of attacks Caracal needs to make before winning.
Sample Input 1
2
Sample Output 1
3
When Caracal attacks the initial monster, it disappears, and two monsters appear, each with the health of .
Then, Caracal can attack each of these new monsters once and win with a total of three attacks.
Sample Input 2
4
Sample Output 2
7
Sample Input 3
1000000000000
Sample Output 3
1099511627775