Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- def schwerkraft():
- global puzzle
- puzzle = map(list, puzzle)
- staebchen = findestaebchen()
- staebchensortiert = sorted(staebchen, key=lambda k: [k[1][0], k[1][1]])
- staebchensortiert = staebchensortiert[::-1] # Liste umdrehen
- for x, y in staebchensortiert:
- """
- x ist die Stäbchennummer
- y ist die Position des letzten Stäbchens
- """
- stab = positionstaebchen(x)
- stab = stab[::-1]
- # stab ist die Liste aller Positionen der Positionsnummer x
- if stab[0][1] == stab[1][1]: # wenn vertikal
- for j in stab:
- # j ist eine Positionsangabe (x, y) von Positionsnummer x
- for i in range(groesse-j[0]-1):
- # i ist Abstand zum Rand: 0...i
- i = groesse-i-2 # Zeile
- if puzzle[i][j[1]] == ' ':
- puzzle[i][j[1]] = str(x)
- puzzle[j[0]][j[1]] = ' '
- break
- else: # wenn horizontal
- # Überprüfen, ob etwas unter dem Stäbchen ist
- if all(puzzle[j+1][d] == ' ' for j,d in stab):
- for i in range(groesse-stab[0][0]-1):
- i = groesse-i-2 # Zeile
- print i
- if all(puzzle[i][d] == ' ' for j,d in stab):
- for j,d in stab:
- puzzle[i][d] = str(x)
- puzzle[j][d] = ' '
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement