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 Lua (5.3.2) (judge verdict: Accepted)

local mod = 1000000007
local function bmul(x, y) return (x * y) % mod end
local n = io.read("*n")
local ret = 1
local t = {}
for i = 1, n do t[i] = true end
for i = 2, n do
  if t[i] then
    local c = 0
    for j = i, n, i do
      t[j] = false
      while j % i == 0 do
        c = c + 1
        j = j // i
      end
    end
    ret = bmul(ret, (c + 1))
  end
end
print(ret)