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 Java7 (OpenJDK 1.7.0) (judge verdict: Accepted)

import java.util.Scanner;

public class Main {
	void run() {
		Scanner sc = new Scanner(System.in);

		int n = sc.nextInt();
		int[] a = new int[n + 1];
		for (int k = 2; k <= n; k++) {
			int t = k;
			while (1 < t) {
				for (int i = 2; i <= t; i++) {
					if (t % i == 0) {
						a[i]++;
						t /= i;
						break;
					}
				}
			}
		}
		long count = 1;
		long MOD = 1_000_000_000 + 7;
		for (int i = 0; i < n + 1; i++) {
			if (a[i] != 0) {
				count *= (a[i] + 1);
				count %= MOD;
			}
		}
		System.out.println(count);
	}

	public static void main(String[] args) {
		new Main().run();
	}
}