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 C# (Mono 4.6.2.0) (judge verdict: Runtime Error)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Satoshi
{
	class Program
	{
		public static void Main(string[] args)
		{
			int n = int.Parse(Console.ReadLine());
			int mod = 1000000000 + 7;
			long ans = 1;
			bool[] prime = new bool[1000];
			int[] count = new int[1000];
			prime[0] = false;
			for (int i = 1; i < 1000; i++)
			{
				prime[i] = true;
				for (int j = 2; j < 35; j++)
				{
					if (i < j)
						break;
					if (i % j == 0)
					{
						if(i != j)
							prime[i] = false;
						break;
					}
				}
			}

			for (int i = 1; i <= n; i++)
			{
				int tmp = i;
				for (int j = 2; j < 1000; j++)
				{
					if (prime[j])
					{
						while (tmp % j == 0)
						{
							count[j]++;
							tmp = tmp / j;
						}
					}
				}
			}
			for (int i = 2; i <= n; i++)
			{
				ans = (ans * (count[i] + 1)) % mod;
			}
			Console.WriteLine(ans);
		}
	}
}