Problem:
Problem F: nCm

Problem

整数nが与えられた時、nCm(異なるn個のものからm個を選ぶ組み合わせの数)が偶数となるような最小のmを出力せよ。

Input

入力は以下の形式で与えられる。

n

Constraints

入力は以下の条件を満たす。

1 ≤ n ≤ 1018

Output

nCmが偶数となるような最小のmを1行に出力する。

Sample Input 1

2

Sample Output 1

1

Sample Input 2

111

Sample Output 2

16

Sample Input 3

3

Sample Output 3

4

Solution in Scala (judge verdict: Accepted)

object Main extends App {
  import scala.io.StdIn._
  val n = readLong
  println(
    ~n & (n + 1)
  )
}