Commit ef87ea2e authored by Ole's avatar Ole

init

parents
Pipeline #331 canceled with stages
# -*- coding: utf-8 -*-
from copy import copy
def perm(n): # erzeugt alle Permutatioen einer Liste mit n Elementen
if n == 1:
return [[1]]
perms = []
for p in perm(n-1):
for i in range(len(p)+1):
perms.append(p[:i] + [n] + p[i:])
return perms
def f(b, s): #führt Permutation s auf aus ints bestehendem iterable b aus
return {s[x-1] for x in b} # x-1 da die
B = [{1,2,3}, {1,4,5}, {1,6,7}, {2,4,6}, {2,5,7}, {3,4,7}, {3,5,6}]
U = []
for s in perm(7): # für alle Permutationen
for b in B: # führe Permutationen auf allen Elementen von B aus
if f(b,s) not in B: # falls die Permutation uns aus B rauswirft gehört sie nicht zu U
break
else: # wird ausgeführt, falls kein break aufgetreten ist
U.append(s) # sonst gehört sie zu U
for s in U: # zeige alle Permutationslisten in U an
print(s)
print(len(U)) # zeige an, wie viele Elemente U hat.
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment