There is no need to test all cases. The ideal case is a swiss cheese in which no guest share a wall. Just start filling rooms from there if needed (the only problems is that room filling must follow an order, which makes the code quite large (but repetitive and boring), and there are two base cases for the swiss cheese structure). Maybe it's possible to create a function and decrease code size, but unless you see it at the moment that you are coding it, it would mean loosing too much time during competition when a Ctrl+C, Ctrl+V would be faster (and better than testing all cases).
Currently, my solutions and this one are the only that don't use brute force, but this one is the smallest. Congrats. :) (I was able to create a smaller solution after looking at your code.)
Find the alphabetic word product
Back to basics 17 - white space
Back to basics 25 - Valid variable names
Number of Horns on a unicorn!
Fahrenheit to Celsius converter
Rubik's Mini Cube: Solve Randomized Cube in 11 Moves or Less; Score is by Time (msec)
Hyperspectral Processing: Determine Material Components given a Hyperspectral vector
Solve Rubik's Cube - One Rotation
GJam 2014 China Rd A: Library Sorting (Large)
Unique: Faster for options 'rows' and 'stable' for large array of uint8
Find the treasures in MATLAB Central and discover how the community can help you!
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Contact your local office