https://www.acmicpc.net/problem/9663
n = int(input())
row = [0] * n
count = 0
def is_valid(x):
for i in range(x):
if row[x] == row[i] or abs(row[x] - row[i]) == abs(x-i):
return False
return True
def n_queen(x):
global count
if x == n:
count += 1
return
for i in range(n):
row[x] = i
if is_valid(x):
n_queen(x+1)
n_queen(0)
print(count)