#P1261. 分裂的函数

分裂的函数

题目描述

定义函数 f(x)f(x) 如下:

  • 如果 x=1x=1,则 f(x)=0f(x) = 0
  • 如果 x>1x>1,则 $f(x) = f( \lfloor x/2 \rfloor) + f( \lceil x/2 \rceil) + x$

其中

  • ⌊α⌋\lfloor \alpha \rfloor 表示令 α\alpha 向下取整
  • ⌈α⌉\lceil \alpha \rceil 表示令 α\alpha 向上取整

给定 NN,请计算并输出 f(N)f(N)

输入格式

  • 单个整数表示 NN

输出格式

3
5

数据范围

  • 30%30\% 的数据,1≤N≤1001\leq N\leq 100
  • 60%60\% 的数据,1≤N≤1,000,0001\leq N\leq 1,000,000
  • 100%100\% 的数据,1≤N≤10171\leq N\leq 10 ^ {17}

来源

改编自 ABC340C Divide and Divide