Problem 60603. ICFP2024 003: Lambdaman 5
The ICFP2024 contest was held June 29 thru July 1. The contest consisted of five parts: ICFP Language, Lambdaman maze, Starship flying, 3D - graph programming, and Efficiency - processing complex ICFP message to a numerical value.
The Lambdaman 5 maze is a 11x16 matrix L near middle. Points are '#' wall and '.' a cheese bit. Wall=0,L=1,Cheese=2
The contest goal was to write a minimal size, bytes, expression that moves L, Lambdaman, to eat each cheese bit.
Lambdaman 5 was given as an ICFP encrypted text String: Slllllaaaaaaaalll~llllalllllllllll~lllallaaaaaallll~llallallllllalll~lallalllaalllall~lallallaFlalllal~lalllallllalllal~llalllaaaalllall~lllallllllllalll~llllaaaaaaaallll~llllllllllllllll~
- .....########...
- ....#...........
- ...#..######....
- ..#..#......#...
- .#..#...##...#..
- .#..#..#L.#...#.
- .#...#....#...#.
- ..#...####...#..
- ...#........#...
- ....########....
- ................
The contest's best Lambdaman5 solution was written in ICFP to reduce length versus ~150 U/R/D/L commands.
B$ L" B. S3/,6%},!-"$!-!.Z} B$ v" B$ v" B$ v" SFOOLL>>LL>FO>>>FFL>>>FFFFOFOFFOLLLLOFOLO L! B. B. v! v! v! which defines the function L" as triple(x) from B$ L" and L! B. B. v! v! v! The usage B$ v" invokes triple(x) thus the main becomes triple(triple(triple(SFOOLL>>LL>FO>>>FFL>>>FFFFOFOFFOLLLLOFOLO) )) or 27 repeats of the string.
The big hint here is that ICFP O is U, > is D, F is L, and L is R when decrypted. Running into walls causes no movement and since this is a spiral maze there appears to be a short sequence that spans all the cheesy bits when repeated. To me it was nuts that someone devised this short sequence.
This challenge is to return a string of commands [UDLR] with minimal matlab program size that eats all the cheese bits.
I will be posting the entire ICFP2024 contest challenges and best solutions.
Solution Stats
Solution Comments
Show commentsProblem Recent Solvers3
Suggested Problems
-
223 Solvers
-
83 Solvers
-
54 Solvers
-
35 Solvers
-
Calculate the Hamming distance between two strings
323 Solvers
More from this Author308
Problem Tags
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!