algo/quickmaffs-permutation-puzzle
74 solves / 465 points
Writeup by Aryan
import itertools
MOD = 10**9 + 7
def ok(perm):
for i in range(1, len(perm)):
if i % 2 == 1:
if perm[i-1] >= perm[i]:
return False
else:
if perm[i-1] <= perm[i]:
return False
return True
def perms(n):
all_permutations = itertools.permutations(range(1, n+1))
valid_count = 0
for perm in all_permutations:
if ok(perm):
valid_count += 1
return valid_count % MOD
for i in range(1, 9):
print(perms(i))
Last updated