#756

import numpy as np

N = int(eval(input()))

 

pf = np.zeros(N+1, dtype=int)

 

def prime_fact(N):

    for i in range(2, int(N**0.5)+1):

        if N%i == 0:

            cnt = 0

            while N%i==0:

                cnt += 1

                N //= i

            pf[i] += cnt

    if N != 1:

        pf[N] += 1



for n in range(1, N+1):

    prime_fact(n)

pf = pf[np.nonzero(pf)]

 

ans = 0

x74 = np.count_nonzero(pf >= 74)

x24 = np.count_nonzero(pf >= 24)

x14 = np.count_nonzero(pf >= 14)

x4 = np.count_nonzero(pf >= 4)

x2 = np.count_nonzero(pf >= 2)

 

if x74:

    ans += x74

if x24 and x2:

    ans += x24*(x2-1)

if x14 and x4:

    ans += x14*(x4-1)

if x2 and x4>=2:

    tmp = x4*(x4-1)//2

    ans += tmp*(x2-2)



print(ans)

from collections import Counter

from itertools import chain





def prime_set(N):

    """

    Nまでの素数のsetを返す

    """

    if N < 4:

        return ({}, {}, {2}, {2, 3})[N]

    Nsq = int(N ** 0.5 + 0.5) + 1

    primes = {2, 3} | set(chain(list(range(5, N + 1, 6)), list(range(7, N + 1, 6))))

    for i in range(5, Nsq, 2):

        if i in primes:

            primes -= set(range(i * i, N + 1, i * 2))

    return primes





def prime_factorization(n):  # 素因数分解

    res = []

    for i in range(2, int(n ** 0.5) + 1):

        if n % i == 0:

            cnt = 0

            while n % i == 0:

                cnt += 1

                n //= i

            res.append((i, cnt))

    if n > 1:

        res.append((n, 1))

    return res





N = int(eval(input()))

primes = {p: 0 for p in prime_set(100)}

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

    pf = prime_factorization(i)

    for p, f in pf:

        primes[p] += f





n2 = n4 = n14 = n24 = n74 = 0

for v in list(primes.values()):

    if v >= 74:

        n74 += 1

    if v >= 24:

        n24 += 1

    if v >= 14:

        n14 += 1

    if v >= 4:

        n4 += 1

    if v >= 2:

        n2 += 1



ans = 0

if n74:

    ans += n74

if n24:

    ans += n24 * (n2 - 1)

if n14:

    ans += n14 * (n4 - 1)

if n4 >= 2 and n2:

    ans += n4 * (n4 - 1) // 2 * (n2 - 2)



print(ans)
# 756
import numpy as np

N = int(eval(input()))
pf = np.zeros(N + 1, dtype=int)


def prime_fact(N):
    for i in range(2, int(N**0.5) + 1):
        if N % i == 0:
            cnt = 0
            while N % i == 0:
                cnt += 1
                N //= i
            pf[i] += cnt
    if N != 1:
        pf[N] += 1


for n in range(1, N + 1):
    prime_fact(n)
pf = pf[np.nonzero(pf)]
ans = 0
x74 = np.count_nonzero(pf >= 74)
x24 = np.count_nonzero(pf >= 24)
x14 = np.count_nonzero(pf >= 14)
x4 = np.count_nonzero(pf >= 4)
x2 = np.count_nonzero(pf >= 2)
if x74:
    ans += x74
if x24 and x2:
    ans += x24 * (x2 - 1)
if x14 and x4:
    ans += x14 * (x4 - 1)
if x2 and x4 >= 2:
    tmp = x4 * (x4 - 1) // 2
    ans += tmp * (x2 - 2)
print(ans)

from collections import Counter
from itertools import chain


def prime_set(N):
    """
    Nまでの素数のsetを返す
    """
    if N < 4:
        return ({}, {}, {2}, {2, 3})[N]
    Nsq = int(N**0.5 + 0.5) + 1
    primes = {2, 3} | set(chain(list(range(5, N + 1, 6)), list(range(7, N + 1, 6))))
    for i in range(5, Nsq, 2):
        if i in primes:
            primes -= set(range(i * i, N + 1, i * 2))
    return primes


def prime_factorization(n):  # 素因数分解
    res = []
    for i in range(2, int(n**0.5) + 1):
        if n % i == 0:
            cnt = 0
            while n % i == 0:
                cnt += 1
                n //= i
            res.append((i, cnt))
    if n > 1:
        res.append((n, 1))
    return res


N = int(eval(input()))
primes = {p: 0 for p in prime_set(100)}
for i in range(2, N + 1):
    pf = prime_factorization(i)
    for p, f in pf:
        primes[p] += f
n2 = n4 = n14 = n24 = n74 = 0
for v in list(primes.values()):
    if v >= 74:
        n74 += 1
    if v >= 24:
        n24 += 1
    if v >= 14:
        n14 += 1
    if v >= 4:
        n4 += 1
    if v >= 2:
        n2 += 1
ans = 0
if n74:
    ans += n74
if n24:
    ans += n24 * (n2 - 1)
if n14:
    ans += n14 * (n4 - 1)
if n4 >= 2 and n2:
    ans += n4 * (n4 - 1) // 2 * (n2 - 2)
print(ans)

-# 756 -import numpy as np +from collections import Counter +from itertools import chain + + +def prime_set(N): +    """ +    Nまでの素数のsetを返す +    """ +    if N < 4: +        return ({}, {}, {2}, {2, 3})[N] +    Nsq = int(N**0.5 + 0.5) + 1 +    primes = {2, 3} | set(chain(list(range(5, N + 1, 6)), list(range(7, N + 1, 6)))) +    for i in range(5, Nsq, 2): +        if i in primes: +            primes -= set(range(i * i, N + 1, i * 2)) +    return primes + + +def prime_factorization(n):  # 素因数分解 +    res = [] +    for i in range(2, int(n**0.5) + 1): +        if n % i == 0: +            cnt = 0 +            while n % i == 0: +                cnt += 1 +                n //= i +            res.append((i, cnt)) +    if n > 1: +        res.append((n, 1)) +    return res + -pf = np.zeros(N + 1, dtype=int) - - -def prime_fact(N): -    for i in range(2, int(N**0.5) + 1): -        if N % i == 0: -            cnt = 0 -            while N % i == 0: -                cnt += 1 -                N //= i -            pf[i] += cnt -    if N != 1: -        pf[N] += 1 - - -for n in range(1, N + 1): -    prime_fact(n) -pf = pf[np.nonzero(pf)] +primes = {p: 0 for p in prime_set(100)} +for i in range(2, N + 1): +    pf = prime_factorization(i) +    for p, f in pf: +        primes[p] += f +n2 = n4 = n14 = n24 = n74 = 0 +for v in list(primes.values()): +    if v >= 74: +        n74 += 1 +    if v >= 24: +        n24 += 1 +    if v >= 14: +        n14 += 1 +    if v >= 4: +        n4 += 1 +    if v >= 2: +        n2 += 1 -x74 = np.count_nonzero(pf >= 74) -x24 = np.count_nonzero(pf >= 24) -x14 = np.count_nonzero(pf >= 14) -x4 = np.count_nonzero(pf >= 4) -x2 = np.count_nonzero(pf >= 2) -if x74: -    ans += x74 -if x24 and x2: -    ans += x24 * (x2 - 1) -if x14 and x4: -    ans += x14 * (x4 - 1) -if x2 and x4 >= 2: -    tmp = x4 * (x4 - 1) // 2 -    ans += tmp * (x2 - 2) +if n74: +    ans += n74 +if n24: +    ans += n24 * (n2 - 1) +if n14: +    ans += n14 * (n4 - 1) +if n4 >= 2 and n2: +    ans += n4 * (n4 - 1) // 2 * (n2 - 2)