Skip to content

Commit

Permalink
update GALLERY.md after merging knight_swap
Browse files Browse the repository at this point in the history
  • Loading branch information
andreaskoepf committed Feb 8, 2025
1 parent 8132cd6 commit 72b37eb
Showing 1 changed file with 29 additions and 227 deletions.
256 changes: 29 additions & 227 deletions GALLERY.md
Original file line number Diff line number Diff line change
Expand Up @@ -1589,20 +1589,20 @@ Metadata: {'words': ['hogtytyof', 'kgqwfwfgh'], 'solution': True, 'solvable': Tr
````

### knight_swap
Generates Knight Swap puzzles with configurable difficulty
Generates Knight Swap puzzles with configurable parameters.

Default configuration:
```python
min_nodes: int = 6 # Minimum number of squares on the board
max_nodes: int = 9 # Maximum number of squares on the board
min_pieces: int = 2 # Minimum number of pieces per color
max_pieces: int = 2 # Maximum number of pieces per color
min_steps: int = 4 # Minimum solution length
max_steps: int = 20 # Maximum solution length
max_attempts: int = 100 # Maximum attempts for board generation and puzzle creation
seed: Optional[int] = 42
size: int = 5 # Virtual dataset size
impossible_ratio: float = 0.2 # Ratio of puzzles that should be impossible
min_nodes = 6
max_nodes = 9
min_pieces = 2
max_pieces = 2
min_steps = 4
max_steps = 20
max_attempts = 100
seed = 42
size = 5
impossible_ratio = 0.2
```

Example tasks:
Expand All @@ -1613,11 +1613,11 @@ Question: Knight Swap Challenge:
```
A B C D
----------------
3 | | w | w | . |
3 | | . | | . |
----------------
2 | B | | | . |
2 | B | w | | |
----------------
1 | | B | . | |
1 | | | B | w |
----------------
```
Expand All @@ -1644,23 +1644,19 @@ Answer Format:
Example: ["w,A1,B3"] means white knight moves A1→B3
Answer: No
Metadata: {'board': {'D3': ['C1'], 'C3': ['B1'], 'B3': ['C1', 'D2'], 'B1': ['C3', 'D2'], 'A2': ['C1'], 'C1': ['A2', 'B3', 'D3'], 'D2': ['B1', 'B3']}, 'pieces': {'D3': None, 'C3': 'w', 'B3': 'w', 'B1': 'B', 'A2': 'B', 'C1': None, 'D2': None}, 'start_turn': 'w', 'solution': None, 'is_possible': False, 'num_steps': 0, 'board_states': None}
--------------------------------------------------
Metadata: {'board': {'C1': ['A2', 'B3', 'D3'], 'A2': ['C1'], 'B3': ['C1'], 'D1': ['B2'], 'B2': ['D1', 'D3'], 'D3': ['B2', 'C1']}, 'pieces': {'C1': 'B', 'A2': 'B', 'B3': None, 'D1': 'w', 'B2': 'w', 'D3': None}, 'start_turn': 'w', 'solution': None, 'is_possible': False, 'num_steps': 0, 'board_states': None}
Example 2:
Question: Knight Swap Challenge:
```
A B C D
----------------
3 | | B | w | |
3 | | w | . | |
----------------
2 | . | . | | B |
2 | w | | | B |
----------------
1 | . | w | . | . |
1 | | | . | B |
----------------
```
Expand All @@ -1686,212 +1682,21 @@ Answer Format:
- For possible puzzles: List moves as ["color,from,to", ...]
Example: ["w,A1,B3"] means white knight moves A1→B3
Answer: ["w,C3,A2", "B,B3,A1", "w,B1,C3", "B,D2,B1", "w,A2,C1", "B,A1,B3", "w,C3,A2", "B,B3,D2", "w,C1,B3", "B,B1,C3", "w,A2,C1", "B,D2,B1", "w,B3,D2", "B,C3,A2", "w,C1,B3", "B,A2,C3"]
Board states after each move:
Move 0:
A B C D
----------------
3 | | B | w | |
----------------
2 | . | . | | B |
----------------
1 | . | w | . | . |
----------------
Move 1:
Move made: w C3→A2
A B C D
----------------
3 | | B | . | |
----------------
2 | w | . | | B |
----------------
1 | . | w | . | . |
----------------
Move 2:
Move made: B B3→A1
A B C D
----------------
3 | | . | . | |
----------------
2 | w | . | | B |
----------------
1 | B | w | . | . |
----------------
Move 3:
Move made: w B1→C3
A B C D
----------------
3 | | . | w | |
----------------
2 | w | . | | B |
----------------
1 | B | . | . | . |
----------------
Move 4:
Move made: B D2→B1
A B C D
----------------
3 | | . | w | |
----------------
2 | w | . | | . |
----------------
1 | B | B | . | . |
----------------
Move 5:
Move made: w A2→C1
A B C D
----------------
3 | | . | w | |
----------------
2 | . | . | | . |
----------------
1 | B | B | w | . |
----------------
Move 6:
Move made: B A1→B3
A B C D
----------------
3 | | B | w | |
----------------
2 | . | . | | . |
----------------
1 | . | B | w | . |
----------------
Move 7:
Move made: w C3→A2
A B C D
----------------
3 | | B | . | |
----------------
2 | w | . | | . |
----------------
1 | . | B | w | . |
----------------
Move 8:
Move made: B B3→D2
A B C D
----------------
3 | | . | . | |
----------------
2 | w | . | | B |
----------------
1 | . | B | w | . |
----------------
Move 9:
Move made: w C1→B3
A B C D
----------------
3 | | w | . | |
----------------
2 | w | . | | B |
----------------
1 | . | B | . | . |
----------------
Move 10:
Move made: B B1→C3
A B C D
----------------
3 | | w | B | |
----------------
2 | w | . | | B |
----------------
1 | . | . | . | . |
----------------
Move 11:
Move made: w A2→C1
A B C D
----------------
3 | | w | B | |
----------------
2 | . | . | | B |
----------------
1 | . | . | w | . |
----------------
Move 12:
Move made: B D2→B1
A B C D
----------------
3 | | w | B | |
----------------
2 | . | . | | . |
----------------
1 | . | B | w | . |
----------------
Move 13:
Move made: w B3→D2
A B C D
----------------
3 | | . | B | |
----------------
2 | . | . | | w |
----------------
1 | . | B | w | . |
----------------
Move 14:
Move made: B C3→A2
A B C D
----------------
3 | | . | . | |
----------------
2 | B | . | | w |
----------------
1 | . | B | w | . |
----------------
Move 15:
Move made: w C1→B3
A B C D
----------------
3 | | w | . | |
----------------
2 | B | . | | w |
----------------
1 | . | B | . | . |
----------------
Move 16:
Move made: B A2→C3
A B C D
----------------
3 | | w | B | |
----------------
2 | . | . | | w |
----------------
1 | . | B | . | . |
----------------
Other metadata: {'board': {'A2': ['C1', 'C3'], 'A1': ['B3'], 'B1': ['C3', 'D2'], 'D2': ['B1', 'B3'], 'B3': ['A1', 'C1', 'D2'], 'D1': ['B2', 'C3'], 'C3': ['A2', 'B1', 'D1'], 'B2': ['D1'], 'C1': ['A2', 'B3']}, 'pieces': {'A2': None, 'A1': None, 'B1': 'w', 'D2': 'B', 'B3': 'B', 'D1': None, 'C3': 'w', 'B2': None, 'C1': None}, 'start_turn': 'w', 'solution': [('w', 'C3', 'A2'), ('B', 'B3', 'A1'), ('w', 'B1', 'C3'), ('B', 'D2', 'B1'), ('w', 'A2', 'C1'), ('B', 'A1', 'B3'), ('w', 'C3', 'A2'), ('B', 'B3', 'D2'), ('w', 'C1', 'B3'), ('B', 'B1', 'C3'), ('w', 'A2', 'C1'), ('B', 'D2', 'B1'), ('w', 'B3', 'D2'), ('B', 'C3', 'A2'), ('w', 'C1', 'B3'), ('B', 'A2', 'C3')], 'is_possible': True, 'num_steps': 16}
--------------------------------------------------
Answer: No
Metadata: {'board': {'B3': ['C1'], 'D1': ['C3'], 'C3': ['A2', 'D1'], 'C1': ['A2', 'B3'], 'D2': [], 'A2': ['C1', 'C3']}, 'pieces': {'B3': 'w', 'D1': 'B', 'C3': None, 'C1': None, 'D2': 'B', 'A2': 'w'}, 'start_turn': 'w', 'solution': None, 'is_possible': False, 'num_steps': 0, 'board_states': None}
Example 3:
Question: Knight Swap Challenge:
```
A B C D
----------------
3 | | . | B | . |
----------------
2 | w | | w | |
----------------
1 | . | . | B | |
----------------
A B C
------------
3 | . | | B |
------------
2 | w | | . |
------------
1 | | w | B |
------------
```
Legend:
Expand All @@ -1917,11 +1722,8 @@ Answer Format:
Example: ["w,A1,B3"] means white knight moves A1→B3
Answer: No
Metadata: {'board': {'B1': ['A3'], 'A3': ['B1', 'C2'], 'A2': ['C1', 'C3'], 'C3': ['A2'], 'C1': ['A2'], 'C2': ['A3']}, 'pieces': {'B1': 'w', 'A3': None, 'A2': 'w', 'C3': 'B', 'C1': 'B', 'C2': None}, 'start_turn': 'w', 'solution': None, 'is_possible': False, 'num_steps': 0, 'board_states': None}
Metadata: {'board': {'C1': ['A2', 'B3', 'D3'], 'B3': ['A1', 'C1'], 'C3': ['B1'], 'D3': ['C1'], 'A1': ['B3', 'C2'], 'A2': ['C1'], 'B1': ['C3'], 'C2': ['A1']}, 'pieces': {'C1': 'B', 'B3': None, 'C3': 'B', 'D3': None, 'A1': None, 'A2': 'w', 'B1': None, 'C2': 'w'}, 'start_turn': 'w', 'solution': None, 'is_possible': False, 'num_steps': 0, 'board_states': None}
--------------------------------------------------
````

### largest_island
Expand Down

0 comments on commit 72b37eb

Please sign in to comment.