For this Question: Given an integer N. Find the number of divisors of N factorial. 
As answer can be huge find answer modulo 1000000007.The only line of input contains a single integer N.

1 <= N <= 1000Print the number of the positive divisors of N! modulo 1000000007Sample 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, I have written this Solution Code: import java.io.*;
import java.util.*;



class Main {
	public static void main (String[] args) {

		Scanner sc=new Scanner(System.in);
		int  n=sc.nextInt();
		System.out.println(factorialDivisors(n)%1000000007);

	}

  static Vector<Integer> allPrimes=new Vector<Integer>();

    static void sieve(int n){

        boolean []prime=new boolean[n+1];

        for(int i=0;i<=n;i++)
        prime[i]=true;

        for (int p=2; p*p<=n; p++)
        {

        if (prime[p] == true)
        {
            for (int i=p*2; i<=n; i += p)
                prime[i] = false;
        }
        }
            for (int p=2; p<=n; p++)
                if (prime[p])
                    allPrimes.add(p);
        }

        static long factorialDivisors(int n)
        {
            sieve(n);
            long result = 1;


            for (int i=0; i < allPrimes.size(); i++)
            {
                long p = allPrimes.get(i);

                long exp = 0;
                while (p <= n)
                {
                    exp = exp + (n/p);
                    p = p*allPrimes.get(i);
                }


                     result = result%1000000007*(exp+1)%1000000007;
            }

            return result;
        }
}, In this Programming Language: Java, Now tell me if this Code is compilable or not?