Problem:
Score : 400 points

Problem Statement

You are given an integer N. Among the divisors of N! (= 1 \times 2 \times ... \times N), how many Shichi-Go numbers (literally "Seven-Five numbers") are there?

Here, a Shichi-Go number is a positive integer that has exactly 75 divisors.

Note

When a positive integer A divides a positive integer B, A is said to a divisor of B.
For example, 6 has four divisors: 1, 2, 3 and 6.

Constraints

1 \leq N \leq 100

N is an integer.

Input

Input is given from Standard Input in the following format:

N

Output

Print the number of the Shichi-Go numbers that are divisors of N!.

Sample Input 1

9

Sample Output 1

0

There are no Shichi-Go numbers among the divisors of 9! = 1 \times 2 \times ... \times 9 = 362880.

Sample Input 2

10

Sample Output 2

1

There is one Shichi-Go number among the divisors of 10! = 3628800: 32400.

Sample Input 3

100

Sample Output 3

543

Solution in Pascal (FPC 2.6.2) (judge verdict: Accepted)

var
    i,j,k,ans,n:longint;
    s:array[0..110] of longint;
    f:array[0..110,0..110,0..110] of boolean;
procedure prime(x:longint);
begin
    j:=2;
    while x>=j do
    begin
        while x mod j=0 do
        begin
            inc(s[j]);
            x:=x div j;
        end;
        inc(j);
    end;
end;
begin
    read(n);
    fillchar(s,sizeof(s),0);
    for i:=2 to n do prime(i);
    fillchar(f,sizeof(f),true);
    ans:=0;
    for i:=2 to n do
        for j:=2 to n do
            if i<>j then
            begin
                if (s[i]>=2) and (s[j]>=24) then inc(ans);
                if (s[i]>=4) and (s[j]>=14) then inc(ans);
                if (s[i]>=2) and (s[j]>=4) then 
                    for k:=2 to n do
                        if (i<>k) and (j<>k) then
                            if s[k]>=4 then 
                                if f[i,j,k] then
                                begin 
                                    inc(ans);
                                    f[i,j,k]:=false;
                                    f[i,k,j]:=false;
                                end;
            end;
    for i:=1 to n do
        if s[i]>=74 then inc(ans);
    writeln(ans);
end.