Problem:
Score : 300 points

Problem Statement

You are given an integer N.
Find the number of the positive divisors of N!, modulo 10^9+7.

Constraints

1≤N≤10^3

Input

The input is given from Standard Input in the following format:

N

Output

Print the number of the positive divisors of N!, modulo 10^9+7.

Sample Input 1

3

Sample Output 1

4

There are four divisors of 3! =6: 1, 2, 3 and 6. Thus, the output should be 4.

Sample Input 2

6

Sample Output 2

30

Sample Input 3

1000

Sample Output 3

972926972

Solution in PyPy3 (7.3.0) (judge verdict: Accepted)

"""
1~Nまでを素因数分解して、素因数の数を足し合わせればよい。
計算量としては、O(N*√N)
"""
from collections import Counter
N = int(input())
count = Counter([])
for i in range(1,N+1):
    tmp = []
    d = 2
    while d**2 <= i:
        if i%d == 0:
            i //= d
            tmp.append(d)
        else:
            d += 1
    if i != 1:
        tmp.append(i)
    count += Counter(tmp)

mod = 10**9 +7
ans = 1
for v in count.values():
    ans *= (v+1)
ans %= mod
print(ans)