#P1025. 多喝热水

多喝热水

题目描述

多喝点热水吧!!!

你现在有着 nn 个不同的水杯,对于第 ii 个水杯,其容积是 ii

你在喝热水的时候,由于旁边一直有人在说多喝热水,因此你十分抓狂,在拿起一杯水 aa 的同时,又拿起了另一杯水 bb 给他让他停止他的唠叨。

显然,你开始喝水的时间一定早于他,因此你关心的是,如果要选择两杯水 a,ba,b ,有多少二元组 (a,b)(a,b) 满足 ab=gcd(a,b)a-b=\gcd(a,b)的选择方案。

注意,可以发现的是,二元组 (a,b)(a,b) 满足条件时 (b,a)(b,a) 必不满足条件,因此不必区分二元组中元素的顺序。

输入格式

一行一个正整数 nn ,表示你拥有的水杯个数。

输出格式

一行一个整数,表示满足条件的二元组数量。

5
5

样例说明1

n=5n=5 的时候,只有 (2,1),(3,2),(4,2),(4,3),(5,4)(2,1),(3,2),(4,2),(4,3),(5,4) 这5种情况。

200
898
1000000007
19877697731

数据范围

每组数据点10分,共10组数据。

数据点编号 nn的范围
1~3 1n1031\le n\le 10^3
4~7 1n1061\le n\le 10^6
8-10 1n10101\le n \le 10^{10}