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 Python (3.4.3) (judge verdict: Accepted)

n = int(input())
ans = 1
a = [0 for i in range(n+1)]
for k in range(1,n+1):
    i = k
    while i % 2 == 0:
        a[2] += 1
        i //= 2
    j = 3
    while j ** 2 <= i:
        if i % j == 0:
            a[j] += 1
            i //= j
        else:
            j+=2
    if i != 1:
        a[i]+=1
for i in a:
    if i != 0:
        ans *= (i+1)
        ans %= (10**9+7)
print(ans)