Communities

Writing
Writing
Codidact Meta
Codidact Meta
The Great Outdoors
The Great Outdoors
Photography & Video
Photography & Video
Scientific Speculation
Scientific Speculation
Cooking
Cooking
Electrical Engineering
Electrical Engineering
Judaism
Judaism
Languages & Linguistics
Languages & Linguistics
Software Development
Software Development
Mathematics
Mathematics
Christianity
Christianity
Code Golf
Code Golf
Music
Music
Physics
Physics
Linux Systems
Linux Systems
Power Users
Power Users
Tabletop RPGs
Tabletop RPGs
Community Proposals
Community Proposals
tag:snake search within a tag
answers:0 unanswered questions
user:xxxx search by author id
score:0.5 posts with 0.5+ score
"snake oil" exact phrase
votes:4 posts with 4+ votes
created:<1w created < 1 week ago
post_type:xxxx type of post
Search help
Notifications
Mark all as read See all your notifications »
Sandbox

Post History

66%
+2 −0
Sandbox Net​​ or​​ not? [FINALIZED]

posted 4mo ago by trichoplax‭  ·  edited 4mo ago by trichoplax‭

#5: Post edited by user avatar trichoplax‭ · 2024-08-01T21:13:35Z (4 months ago)
Mark as finalized
  • Net​​ or​​ not?
  • Net​​ or​​ not? [FINALIZED]
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • - The grid is represented as 6 newline separated strings of 6 characters, with `#` for a filled square and `.` for an empty square.
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes[^1]
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • ### The 11 nets of a cube[^2]
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [^1]: Thanks to [The 35 hexominoes Wikimedia page].
  • [^2]: Thanks to [The 11 nets of a cube Wikimedia page].
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
  • # Now posted: [Net​​ or​​ not?](https://codegolf.codidact.com/posts/292173)
  • ---
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • - The grid is represented as 6 newline separated strings of 6 characters, with `#` for a filled square and `.` for an empty square.
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes[^1]
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • ### The 11 nets of a cube[^2]
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [^1]: Thanks to [The 35 hexominoes Wikimedia page].
  • [^2]: Thanks to [The 11 nets of a cube Wikimedia page].
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
#4: Post edited by user avatar trichoplax‭ · 2024-08-01T21:10:41Z (4 months ago)
Further specify input
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes[^1]
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • ### The 11 nets of a cube[^2]
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [^1]: Thanks to [The 35 hexominoes Wikimedia page].
  • [^2]: Thanks to [The 11 nets of a cube Wikimedia page].
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • - The grid is represented as 6 newline separated strings of 6 characters, with `#` for a filled square and `.` for an empty square.
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes[^1]
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • ### The 11 nets of a cube[^2]
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [^1]: Thanks to [The 35 hexominoes Wikimedia page].
  • [^2]: Thanks to [The 11 nets of a cube Wikimedia page].
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
#3: Post edited by user avatar trichoplax‭ · 2024-08-01T20:57:50Z (4 months ago)
Move attribution to footnotes
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • Thanks to [The 35 hexominoes Wikimedia page].
  • ### The 11 nets of a cube
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Thanks to [The 11 nets of a cube Wikimedia page].
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes[^1]
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • ### The 11 nets of a cube[^2]
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [^1]: Thanks to [The 35 hexominoes Wikimedia page].
  • [^2]: Thanks to [The 11 nets of a cube Wikimedia page].
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
#2: Post edited by user avatar trichoplax‭ · 2024-07-31T16:15:01Z (4 months ago)
Add explanation of hexomino
  • Given a hexomino, indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • Thanks to [The 35 hexominoes Wikimedia page].
  • ### The 11 nets of a cube
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Thanks to [The 11 nets of a cube Wikimedia page].
  • Your code must also accept inputs and recognise cube nets that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
  • Given a [hexomino], indicate whether it is a net of a cube.
  • ## Input
  • - A 6 by 6 grid containing exactly 6 filled squares.
  • - The 6 filled squares will be in a single edge connected set (a hexomino).
  • - The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).
  • ## Output
  • - One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.
  • ## The hexominoes
  • A hexomino is an edge connected subset of the square tiling, composed of exactly 6 squares.
  • Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.
  • ### The 35 hexominoes
  • [![The 35 hexominoes]][The 35 hexominoes Wikimedia page]
  • Thanks to [The 35 hexominoes Wikimedia page].
  • ### The 11 nets of a cube
  • [![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]
  • Thanks to [The 11 nets of a cube Wikimedia page].
  • Your code must also accept inputs that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations by a multiple of 90 degrees and reflections, 64 of which are cube nets. The test cases include all of these.
  • ## Test cases
  • ### Cube nets
  • The 64 hexominoes that can be folded into a cube.
  • ```text
  • #.....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ###...
  • ......
  • ......
  • ...#..
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .#....
  • .#....
  • ......
  • ......
  • .##...
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • .##...
  • ......
  • ......
  • #.....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ##....
  • .###..
  • .#....
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • ..#...
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • #.....
  • ......
  • ......
  • ..##..
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • ..#...
  • ......
  • ......
  • ..#...
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..##..
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • ..##..
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • ###...
  • ..###.
  • ......
  • ......
  • ......
  • ......
  • ..###.
  • ###...
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .#....
  • .#....
  • ......
  • .#....
  • .#....
  • ##....
  • #.....
  • #.....
  • ......
  • .#....
  • ###...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • .#....
  • ###...
  • .#....
  • ......
  • ......
  • ..#...
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .###..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • ..##..
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • ..#...
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • ..##..
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • ..#...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • .###..
  • ...#..
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • ...#..
  • .###..
  • ##....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • .##...
  • .#....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .##...
  • ......
  • ......
  • .#....
  • .#....
  • .##...
  • ##....
  • ......
  • ......
  • ..#...
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ##....
  • .#....
  • ......
  • ......
  • .#....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .##...
  • .#....
  • ......
  • ......
  • .#....
  • .##...
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .##...
  • ......
  • ......
  • .##...
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • ##....
  • .#....
  • .##...
  • .#....
  • ......
  • ......
  • #.....
  • ####..
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ####..
  • #.....
  • ......
  • ......
  • ......
  • ...#..
  • ####..
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ####..
  • ...#..
  • ......
  • ......
  • ......
  • ```
  • ### Not cube nets
  • The 152 hexominoes that cannot be folded into a cube.
  • ```text
  • ..#...
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • ..#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • .#....
  • .#....
  • ......
  • #.....
  • #.....
  • ##....
  • #.....
  • #.....
  • ......
  • .##...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • .####.
  • ......
  • ......
  • ......
  • ......
  • ####..
  • ...##.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...##.
  • ####..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • #.....
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • .#....
  • ......
  • .#....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • .####.
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • .#....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • .#....
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • ..##..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • #.....
  • ......
  • ......
  • ..#...
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • .###..
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • ..#...
  • ......
  • ......
  • ..##..
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .###..
  • ......
  • ......
  • ......
  • ####..
  • ##....
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ##....
  • ##....
  • ......
  • ......
  • ..##..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • ##....
  • ......
  • ......
  • ##....
  • ##....
  • .#....
  • .#....
  • ......
  • ......
  • ##....
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..##..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#....
  • .#....
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • ..#...
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • #.....
  • ......
  • ......
  • #.....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • ####..
  • ..#...
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • ####..
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ####..
  • #.#...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • #.#...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • .#....
  • ......
  • ......
  • .#.#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ####..
  • .#.#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • #.....
  • ......
  • ......
  • ...#..
  • ...#..
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • ...#..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • ..#...
  • ###...
  • ......
  • ......
  • ###...
  • ..#...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • #.....
  • #.....
  • #.....
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ###...
  • ......
  • ......
  • #.....
  • #.....
  • ####..
  • ......
  • ......
  • ......
  • ####..
  • #.....
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • .#....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • .##...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • .##...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • .##...
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • .##...
  • .##...
  • ##....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • .##...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .##...
  • ..#...
  • ......
  • ......
  • ......
  • ###...
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • ######
  • ......
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • #.....
  • .###..
  • ##....
  • .#....
  • ......
  • ......
  • ......
  • .#....
  • ###...
  • #.....
  • #.....
  • ......
  • ......
  • .#....
  • ###...
  • ..#...
  • ..#...
  • ......
  • ......
  • ..#...
  • ..#...
  • ###...
  • .#....
  • ......
  • ......
  • ###...
  • ..##..
  • ..#...
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • ..#...
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ###...
  • .#....
  • ......
  • ......
  • #.#...
  • ###...
  • #.....
  • ......
  • ......
  • ......
  • #.#...
  • ###...
  • ..#...
  • ......
  • ......
  • ......
  • #.....
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ..#...
  • ###...
  • #.#...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • ##....
  • ......
  • ......
  • ......
  • .##...
  • .#....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .#....
  • .##...
  • ......
  • ......
  • ......
  • ###...
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • ##....
  • ##....
  • ......
  • ......
  • ......
  • #####.
  • ....#.
  • ......
  • ......
  • ......
  • ......
  • ....#.
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #####.
  • #.....
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • #.....
  • #.....
  • ......
  • .#....
  • .#....
  • .#....
  • .#....
  • ##....
  • ......
  • #.....
  • #.....
  • #.....
  • #.....
  • ##....
  • ......
  • ##....
  • .#....
  • .#....
  • .#....
  • .#....
  • ......
  • #.....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.....
  • ##....
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • #.....
  • ......
  • ......
  • ......
  • ###...
  • ..#...
  • .##...
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • #.#...
  • ..#...
  • ......
  • ......
  • ......
  • ..#...
  • #.#...
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ..#...
  • ###...
  • ......
  • ......
  • ......
  • ###...
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • .###..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .##...
  • ..#...
  • ..#...
  • ......
  • ......
  • ###...
  • ..##..
  • ...#..
  • ......
  • ......
  • ......
  • ..#...
  • ..#...
  • .##...
  • ##....
  • ......
  • ......
  • .##...
  • ##....
  • #.....
  • #.....
  • ......
  • ......
  • .###..
  • ##....
  • #.....
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .###..
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • ##....
  • .##...
  • ......
  • ......
  • ...#..
  • ..##..
  • ###...
  • ......
  • ......
  • ......
  • .##...
  • ####..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • ##....
  • #.....
  • ......
  • ......
  • .#....
  • ##....
  • ##....
  • .#....
  • ......
  • ......
  • ####..
  • .##...
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • ##....
  • #.....
  • ......
  • ......
  • ##....
  • #.....
  • ##....
  • .#....
  • ......
  • ......
  • ##.#..
  • .###..
  • ......
  • ......
  • ......
  • ......
  • .###..
  • ##.#..
  • ......
  • ......
  • ......
  • ......
  • #.##..
  • ###...
  • ......
  • ......
  • ......
  • ......
  • .#....
  • ##....
  • #.....
  • ##....
  • ......
  • ......
  • ###...
  • #.##..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • .#....
  • ##....
  • ......
  • ......
  • .#....
  • ##....
  • .#....
  • .#....
  • .#....
  • ......
  • ...#..
  • #####.
  • ......
  • ......
  • ......
  • ......
  • #.....
  • #.....
  • #.....
  • ##....
  • #.....
  • ......
  • .#....
  • #####.
  • ......
  • ......
  • ......
  • ......
  • .#....
  • .#....
  • .#....
  • ##....
  • .#....
  • ......
  • #####.
  • ...#..
  • ......
  • ......
  • ......
  • ......
  • #.....
  • ##....
  • #.....
  • #.....
  • #.....
  • ......
  • #####.
  • .#....
  • ......
  • ......
  • ......
  • ......
  • #..#..
  • ####..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • .#....
  • .#....
  • ##....
  • ......
  • ......
  • ####..
  • #..#..
  • ......
  • ......
  • ......
  • ......
  • ##....
  • #.....
  • #.....
  • ##....
  • ......
  • ......
  • ```
  • ## Scoring
  • This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.
  • > Explanations are optional, but I'm more likely to upvote answers that have one.
  • [hexomino]: https://en.wikipedia.org/wiki/Hexomino
  • [The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg
  • [The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg
  • [The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg
  • [The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg
  • [code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"
#1: Initial revision by user avatar trichoplax‭ · 2024-07-31T16:03:22Z (4 months ago)
Net​​ or​​ not?
Given a hexomino, indicate whether it is a net of a cube.

## Input
- A 6 by 6 grid containing exactly 6 filled squares.
- The 6 filled squares will be in a single edge connected set (a hexomino).
- The topmost row and leftmost column will never be empty (the hexomino will be as far up and left as it can go).

## Output
- One of 2 distinct values to indicate whether the hexomino can be folded to give a cube.

## The hexominoes
Up to rotation and reflection, there are 35 edge connected hexominoes, 11 of which are nets of a cube.

### The 35 hexominoes
[![The 35 hexominoes]][The 35 hexominoes Wikimedia page]

Thanks to [The 35 hexominoes Wikimedia page].

### The 11 nets of a cube
[![The 11 nets of a cube]][The 11 nets of a cube Wikimedia page]

Thanks to [The 11 nets of a cube Wikimedia page].

Your code must also accept inputs and recognise cube nets that are rotations and reflections of these. There are a total of 216 hexominoes including all rotations and reflections, 64 of which are cube nets. The test cases include all of these.

## Test cases
### Cube nets
The 64 hexominoes that can be folded into a cube.
```text
#.....
####..
#.....
......
......
......

.#....
.#....
.#....
###...
......
......

...#..
####..
...#..
......
......
......

###...
.#....
.#....
.#....
......
......

.##...
.#....
.#....
##....
......
......

...#..
####..
#.....
......
......
......

##....
.#....
.#....
.##...
......
......

#.....
####..
...#..
......
......
......

##....
.###..
.#....
......
......
......

#.....
###...
.#....
.#....
......
......

..#...
###...
.#....
.#....
......
......

.#....
.###..
##....
......
......
......

.#....
.#....
###...
#.....
......
......

..##..
###...
..#...
......
......
......

.#....
.#....
###...
..#...
......
......

..#...
###...
..##..
......
......
......

##....
.##...
..##..
......
......
......

#.....
##....
.##...
..#...
......
......

..##..
.##...
##....
......
......
......

..#...
.##...
##....
#.....
......
......

###...
..###.
......
......
......
......

..###.
###...
......
......
......
......

#.....
#.....
##....
.#....
.#....
......

.#....
.#....
##....
#.....
#.....
......

.#....
###...
.#....
.#....
......
......

.#....
.#....
###...
.#....
......
......

..#...
####..
..#...
......
......
......

.#....
####..
.#....
......
......
......

.#....
###...
..##..
......
......
......

..#...
.##...
##....
.#....
......
......

##....
.###..
..#...
......
......
......

.#....
.##...
##....
#.....
......
......

#.....
##....
.##...
.#....
......
......

..##..
###...
.#....
......
......
......

..#...
.###..
##....
......
......
......

.#....
##....
.##...
..#...
......
......

#.....
##....
.#....
.##...
......
......

..##..
###...
#.....
......
......
......

##....
.#....
.##...
..#...
......
......

.##...
.#....
##....
#.....
......
......

##....
.###..
...#..
......
......
......

#.....
###...
..##..
......
......
......

..#...
.##...
.#....
##....
......
......

...#..
.###..
##....
......
......
......

...#..
####..
..#...
......
......
......

.##...
##....
.#....
.#....
......
......

##....
.##...
.#....
.#....
......
......

.#....
####..
#.....
......
......
......

#.....
####..
.#....
......
......
......

.#....
.#....
##....
.##...
......
......

.#....
.#....
.##...
##....
......
......

..#...
####..
...#..
......
......
......

.#....
.##...
##....
.#....
......
......

.#....
####..
..#...
......
......
......

..#...
####..
.#....
......
......
......

.#....
##....
.##...
.#....
......
......

.#....
.##...
.#....
##....
......
......

.#....
##....
.#....
.##...
......
......

.##...
.#....
##....
.#....
......
......

##....
.#....
.##...
.#....
......
......

#.....
####..
..#...
......
......
......

..#...
####..
#.....
......
......
......

...#..
####..
.#....
......
......
......

.#....
####..
...#..
......
......
......
```

### Not cube nets
The 152 hexominoes that cannot be folded into a cube.
```text
..#...
#####.
......
......
......
......

#####.
..#...
......
......
......
......

.#....
.#....
##....
.#....
.#....
......

#.....
#.....
##....
#.....
#.....
......

.##...
###...
.#....
......
......
......

##....
###...
.#....
......
......
......

.#....
###...
##....
......
......
......

.#....
###...
.##...
......
......
......

##....
.####.
......
......
......
......

####..
...##.
......
......
......
......

#.....
##....
.#....
.#....
.#....
......

...##.
####..
......
......
......
......

.#....
.#....
.#....
##....
#.....
......

#.....
#.....
#.....
##....
.#....
......

.#....
##....
#.....
#.....
#.....
......

.####.
##....
......
......
......
......

.#....
##....
###...
......
......
......

#.....
###...
##....
......
......
......

###...
##....
.#....
......
......
......

##....
###...
#.....
......
......
......

###...
.##...
.#....
......
......
......

.##...
###...
..#...
......
......
......

..#...
###...
.##...
......
......
......

.#....
.##...
###...
......
......
......

###...
..#...
..##..
......
......
......

..#...
..#...
###...
#.....
......
......

..#...
###...
#.....
#.....
......
......

#.....
###...
..#...
..#...
......
......

.###..
.#....
##....
......
......
......

#.....
#.....
###...
..#...
......
......

..##..
..#...
###...
......
......
......

##....
.#....
.###..
......
......
......

####..
##....
......
......
......
......

.#....
.#....
##....
##....
......
......

..##..
####..
......
......
......
......

#.....
#.....
##....
##....
......
......

##....
##....
.#....
.#....
......
......

##....
####..
......
......
......
......

##....
##....
#.....
#.....
......
......

####..
..##..
......
......
......
......

####..
.#....
.#....
......
......
......

..#...
..#...
####..
......
......
......

..#...
..#...
###...
..#...
......
......

#.....
#.....
###...
#.....
......
......

#.....
###...
#.....
#.....
......
......

####..
..#...
..#...
......
......
......

.#....
.#....
####..
......
......
......

..#...
###...
..#...
..#...
......
......

####..
#.#...
......
......
......
......

.#....
##....
.#....
##....
......
......

#.#...
####..
......
......
......
......

#.....
##....
#.....
##....
......
......

##....
.#....
##....
.#....
......
......

.#.#..
####..
......
......
......
......

####..
.#.#..
......
......
......
......

##....
#.....
##....
#.....
......
......

...#..
...#..
####..
......
......
......

####..
...#..
...#..
......
......
......

..#...
..#...
..#...
###...
......
......

###...
..#...
..#...
..#...
......
......

###...
#.....
#.....
#.....
......
......

#.....
#.....
#.....
###...
......
......

#.....
#.....
####..
......
......
......

####..
#.....
#.....
......
......
......

.##...
##....
.##...
......
......
......

#.#...
###...
.#....
......
......
......

##....
.##...
##....
......
......
......

.#....
###...
#.#...
......
......
......

##....
##....
.##...
......
......
......

#.....
###...
.##...
......
......
......

..#...
###...
##....
......
......
......

.##...
###...
#.....
......
......
......

.##...
##....
##....
......
......
......

##....
.##...
.##...
......
......
......

##....
###...
..#...
......
......
......

.##...
.##...
##....
......
......
......

#.....
##....
###...
......
......
......

..#...
.##...
###...
......
......
......

###...
.##...
..#...
......
......
......

###...
##....
#.....
......
......
......

######
......
......
......
......
......

#.....
#.....
#.....
#.....
#.....
#.....

.###..
##....
.#....
......
......
......

.#....
###...
#.....
#.....
......
......

.#....
###...
..#...
..#...
......
......

..#...
..#...
###...
.#....
......
......

###...
..##..
..#...
......
......
......

.#....
##....
.###..
......
......
......

..#...
..##..
###...
......
......
......

#.....
#.....
###...
.#....
......
......

#.#...
###...
#.....
......
......
......

#.#...
###...
..#...
......
......
......

#.....
###...
#.#...
......
......
......

##....
.#....
###...
......
......
......

..#...
###...
#.#...
......
......
......

###...
.#....
##....
......
......
......

.##...
.#....
###...
......
......
......

###...
.#....
.##...
......
......
......

###...
###...
......
......
......
......

##....
##....
##....
......
......
......

#####.
....#.
......
......
......
......

....#.
#####.
......
......
......
......

#####.
#.....
......
......
......
......

##....
#.....
#.....
#.....
#.....
......

.#....
.#....
.#....
.#....
##....
......

#.....
#.....
#.....
#.....
##....
......

##....
.#....
.#....
.#....
.#....
......

#.....
#####.
......
......
......
......

#.....
#.#...
###...
......
......
......

###...
#.....
##....
......
......
......

###...
#.#...
#.....
......
......
......

###...
..#...
.##...
......
......
......

##....
#.....
###...
......
......
......

###...
#.#...
..#...
......
......
......

..#...
#.#...
###...
......
......
......

.##...
..#...
###...
......
......
......

###...
.###..
......
......
......
......

.#....
##....
##....
#.....
......
......

#.....
##....
##....
.#....
......
......

.###..
###...
......
......
......
......

##....
.##...
..#...
..#...
......
......

###...
..##..
...#..
......
......
......

..#...
..#...
.##...
##....
......
......

.##...
##....
#.....
#.....
......
......

.###..
##....
#.....
......
......
......

#.....
##....
.###..
......
......
......

#.....
#.....
##....
.##...
......
......

...#..
..##..
###...
......
......
......

.##...
####..
......
......
......
......

#.....
##....
##....
#.....
......
......

.#....
##....
##....
.#....
......
......

####..
.##...
......
......
......
......

##....
.#....
##....
#.....
......
......

##....
#.....
##....
.#....
......
......

##.#..
.###..
......
......
......
......

.###..
##.#..
......
......
......
......

#.##..
###...
......
......
......
......

.#....
##....
#.....
##....
......
......

###...
#.##..
......
......
......
......

#.....
##....
.#....
##....
......
......

.#....
##....
.#....
.#....
.#....
......

...#..
#####.
......
......
......
......

#.....
#.....
#.....
##....
#.....
......

.#....
#####.
......
......
......
......

.#....
.#....
.#....
##....
.#....
......

#####.
...#..
......
......
......
......

#.....
##....
#.....
#.....
#.....
......

#####.
.#....
......
......
......
......

#..#..
####..
......
......
......
......

##....
.#....
.#....
##....
......
......

####..
#..#..
......
......
......
......

##....
#.....
#.....
##....
......
......
```

## Scoring
This is a [code golf challenge]. Your score is the number of bytes in your code. Lowest score for each language wins.

> Explanations are optional, but I'm more likely to upvote answers that have one.

[The 35 hexominoes]: https://upload.wikimedia.org/wikipedia/commons/0/02/All_35_free_hexominoes.svg

[The 35 hexominoes Wikimedia page]: https://en.wikipedia.org/wiki/File:All_35_free_hexominoes.svg

[The 11 nets of a cube]: https://upload.wikimedia.org/wikipedia/commons/c/cd/The_11_cubic_nets.svg

[The 11 nets of a cube Wikimedia page]: https://en.wikipedia.org/wiki/File:The_11_cubic_nets.svg

[code golf challenge]: https://codegolf.codidact.com/categories/49/tags/4274 "The code-golf tag"