Outsourcing The Solution

Every year for Christmas, G spends time researching which puzzle he should get me in hopes of finding one that I cannot solve or cannot solve without significant amount of time. Seriously. He does this every year. And when he find his choice for unsolvable puzzle, he takes it apart, wraps each piece individually, then destroys all evidence of how it should look and/or the solution.

He was confident this year. He had googled "hardest puzzle" and found one that people feels is unsolvable. 12 pieces fit into a square base. And that is what I found after unwrapping everything Christmas morning.

I will not admit how many hours I have spent trying to solve this puzzle. I even tried to figure out the mathematical way of solving it because, there has to be one. I have been taunted and teased about all of my approaches. Yeah, I’ve been working on this puzzle for months.

Last week, we got into a big conversation about puzzles. All kinds of those types of puzzles including those iron work ones where you have to figure out how to get the ring off of the chain and iron – all the way to Rubik’s cube. Several declared they have never been stumped by one.

Oh yeah.

I told them I would bring one in for them to solve then.

Six of these uber smart developers spent time working on this puzzle. They would explain to me what they were trying next. I finally thanked them for affirming me.

"So we aren’t on the right track to solving this?" they asked.

"No idea – I haven’t solved it yet."

They had all thought I had solved it already so exhaled when they realized how much time I had spent with the same result.

At one point, two of them were building programs to solve it for us. One got pulled off for real work, while the other was like "it will be solved."

I texted G: "So, you have stumped me with this puzzle as well as six extremely smart programmers. They are starting to code a program to find the solution now. You are indirectly responsible for the reduced productivity of the team today."

His response back: "1. You cannot outsource the solving of the puzzle; that’s cheating. 2. Using a computer is cheating. 3. YOU ARE CHEATING"

When I left Friday afternoon, I told the one developer that I send my apologies to his wife and kids. He chuckled and said it would be solved by Monday.

It was solved by 8 am Sunday morning, but only after he refined the program 3 times after realizing his math estimates were wrong. There weren’t 3 billion possibilities to go through to find the solution. There were almost 2 TRILLION.

The final program took 8 hours to run before getting the solution.

2 Trillion possible combination where there are 8 solutions. (All 8 solutions have the same pieces next to each other – it’s just which way you apply it in the square each time.)

No wonder this seemed like an impossible puzzle. Think about how you’d have to keep track of every possible combination in order to find the solution. And as time would go on, even with meticulous records, it would be harder and hard to find the solution as you’d have to validate it is a combination you had not tried previously. If you found it quickly, it would truly be by accident.

I apologized to the boss this morning for the reduced work done Friday as a result of this puzzle, but quickly pointed out all that they learned. To be fair, they did learn a lot doing the programming. So much so, it makes me want to run out and find them another really hard puzzle and set them off to solve it. I’ll just make sure that they don’t have anything going on with the family that weekend.

And for the record, I do agree that I cheated.

I view my method of solution would fall into the "work smarter, not harder" category.

What do you think?