# coding: utf-8

import sys

from collections import defaultdict

import itertools



sr = lambda: sys.stdin.readline().rstrip()

ir = lambda: int(sr())

lr = lambda: list(map(int, sr().split()))



def prime_factorize(n): # Nの素因数分解

    a = []

    while n % 2 == 0:

        a.append(2)

        n //= 2

    f = 3

    while f * f <= n:

        if n % f == 0:

            a.append(f)

            n //= f

        else:

            f += 2

    if n != 1:

        a.append(n)

    return a



# 約数の組み合わせ（３・５・５）（７５）など

N = ir()

dic = defaultdict(int)

for x in range(2, N+1):

    primes = prime_factorize(x)

    for p in primes:

        if p in dic:

            dic[p] += 1

        else:

            dic[p] = 1



answer = 0

for x, y, z in itertools.permutations(list(dic.values()), 3):

    if x >= 2 and y >= 4 and z >= 4:

        answer += 1



answer //= 2

for x, y in itertools.permutations(list(dic.values()), 2):

    if x >= 4 and y >= 14:

        answer += 1

    if x >= 2 and y >= 24:

        answer += 1



for x in list(dic.values()):

    if x >= 74:

        answer += 1



print(answer)

# 40
# coding: utf-8

import sys



sr = lambda: sys.stdin.readline().rstrip()

ir = lambda: int(sr())

lr = lambda: list(map(int, sr().split()))



N = ir()

power = [0] * (N+1)

for x in range(2, N+1):

    for p in range(2, x+1):

        while x % p == 0:

            power[p] += 1

            x //= p



def num(x):

    '''約数がx-1以上の数を返す'''

    return len(list(filter(lambda y: y >= x-1, power)))



answer = num(75) + num(25) * (num(3)-1) + num(15) * (num(5)-1)\

        + num(5) * (num(5)-1) * (num(3)-2) // 2

print(answer)

# coding: utf-8
import sys
from collections import defaultdict
import itertools

sr = lambda: sys.stdin.readline().rstrip()
ir = lambda: int(sr())
lr = lambda: list(map(int, sr().split()))


def prime_factorize(n):  # Nの素因数分解
    a = []
    while n % 2 == 0:
        a.append(2)
        n //= 2
    f = 3
    while f * f <= n:
        if n % f == 0:
            a.append(f)
            n //= f
        else:
            f += 2
    if n != 1:
        a.append(n)
    return a


# 約数の組み合わせ（３・５・５）（７５）など
N = ir()
dic = defaultdict(int)
for x in range(2, N + 1):
    primes = prime_factorize(x)
    for p in primes:
        if p in dic:
            dic[p] += 1
        else:
            dic[p] = 1
answer = 0
for x, y, z in itertools.permutations(list(dic.values()), 3):
    if x >= 2 and y >= 4 and z >= 4:
        answer += 1
answer //= 2
for x, y in itertools.permutations(list(dic.values()), 2):
    if x >= 4 and y >= 14:
        answer += 1
    if x >= 2 and y >= 24:
        answer += 1
for x in list(dic.values()):
    if x >= 74:
        answer += 1
print(answer)
# 40

# coding: utf-8
import sys

sr = lambda: sys.stdin.readline().rstrip()
ir = lambda: int(sr())
lr = lambda: list(map(int, sr().split()))
N = ir()
power = [0] * (N + 1)
for x in range(2, N + 1):
    for p in range(2, x + 1):
        while x % p == 0:
            power[p] += 1
            x //= p


def num(x):
    """約数がx-1以上の数を返す"""
    return len(list(filter(lambda y: y >= x - 1, power)))


answer = (
    num(75)
    + num(25) * (num(3) - 1)
    + num(15) * (num(5) - 1)
    + num(5) * (num(5) - 1) * (num(3) - 2) // 2
)
print(answer)

-from collections import defaultdict -import itertools +N = ir() +power = [0] * (N + 1) +for x in range(2, N + 1): +    for p in range(2, x + 1): +        while x % p == 0: +            power[p] += 1 +            x //= p -def prime_factorize(n):  # Nの素因数分解 -    a = [] -    while n % 2 == 0: -        a.append(2) -        n //= 2 -    f = 3 -    while f * f <= n: -        if n % f == 0: -            a.append(f) -            n //= f -        else: -            f += 2 -    if n != 1: -        a.append(n) -    return a +def num(x): +    """約数がx-1以上の数を返す""" +    return len(list(filter(lambda y: y >= x - 1, power))) -# 約数の組み合わせ（３・５・５）（７５）など -N = ir() -dic = defaultdict(int) -for x in range(2, N + 1): -    primes = prime_factorize(x) -    for p in primes: -        if p in dic: -            dic[p] += 1 -        else: -            dic[p] = 1 -answer = 0 -for x, y, z in itertools.permutations(list(dic.values()), 3): -    if x >= 2 and y >= 4 and z >= 4: -        answer += 1 -answer //= 2 -for x, y in itertools.permutations(list(dic.values()), 2): -    if x >= 4 and y >= 14: -        answer += 1 -    if x >= 2 and y >= 24: -        answer += 1 -for x in list(dic.values()): -    if x >= 74: -        answer += 1 +answer = ( +    num(75) +    + num(25) * (num(3) - 1) +    + num(15) * (num(5) - 1) +    + num(5) * (num(5) - 1) * (num(3) - 2) // 2 +) -# 40