P3764 签到题 III
题目背景
pj 组选手 zzq 近日学会了求最大公约数的辗转相除法。
题目描述
类比辗转相除法,zzq 定义了一个奇怪的函数:
```cpp
typedef long long ll;
ll f(ll a,ll b)
{
if(a==b) return 0;
if(a>b) return f(a-b,b+b)+1;
else return f(a+a,b-a)+1;
}
```
zzq 定义完这个函数兴高采烈,随便输入了两个数,打算计算 $f$ 值,发现这个函数死循环了……于是 zzq 定义这个函数递归死循环的情况下 $f$ 值为 $0$。
现在 zzq 输入了一个数 $n$,想要求出 $\sum_{i=1}^n \sum_{j=1}^n f(i,j)$。
输入格式
一行一个数 $n$。
输出格式
一行一个数 $\sum_{i=1}^n \sum_{j=1}^n f(i,j)$。
说明/提示
对 $10\%$ 的数据,$n \leq 300$。
对于 $40\%$ 的数据,$n \leq 2000$。
对于 $70\%$ 的数据,$n \leq 5 \times 10^5$。
对于 $100\%$ 的数据,$1 \leq n \leq 5 \times 10^{11}$。