There Is No Spoon - Final Report


On Saturday, 25th of April, it was There Is No Spoon. The first contest of the year in solo mode. 

Your mission: You had 4 hours max to create a program able to regulate the ammunition flow of an APU taking part in the fight of the Resistance against the Sentinels. 


Due to a memory leak, some of you encountered issues regarding the display of the animations in the viewer on Firefox or IE. We are still investigating on that matter and are sorry if it diminished your efficiency in solving the puzzles.

And we shall also mention the (short) lag at the very beginning of the contest in loading the game. We chose to store all images on distant geographically distributed Amazon servers: so it took a little bit more time for everything to load, but once it was done, the game was all ready to play.


There Is No Spoon brought together 3,132 participants, and 1,628 players managed to finish the contest.

The average score for this challenge was 42%. The average time to solve the 2 puzzles was: 3:28:40.

The ranking and leaderboard are here.

Athin (C++, Indonesia), finished first in 01:29:32 shilov (Java, Russia) wrapped it up in 01:41:27 and Shef (C++, Ukraine) arrived in 3rd place in 01:51:50. GG to you guys!


Note: to access your personal report for the contest with your source code, go tho the contest leaderboard and click on the "View report" button on the right as shown below:

Puzzle 1:

The goal here was to identify the horizontal and vertical neighbors of each node.
The map was provided under the form of strings where one node was represented by the character "0" and each empty space by the character "."

example of a simple map:

You had to traverse each node on the map and for each one, you had to explore the cells to the right until you could find another node (and repeat the process for the bottom).

This exercise was a warm-up which was more about producing code than actually implementing a particular algorithm. This said, you had to master loops to scan a multidimensional array.

Stats : 66% of finishers completed 100% of this exercise (average score for this exercise : 69%)

Puzzle 2:

This time, each node had to contain a precise number of links, the aim being to link all the nodes together. This exercise was based on the game Hashiwokakero (or Bridges). You can find the detailed rules here:

It was possible to keep the same data structure as for puzzle 1 or you could choose to store the nodes and the links in a graph rather than a grid.

As a first step, you could choose to go for a logical implementation (like a human being would solve the puzzle) by establishing a list of rules in order to limit the number of links.

The easiest example would be: "a node with 8 links has to have 2 links going in each direction". With a sufficient number of rules, you could pass a majority of test cases.

Some constraints were more difficult to integrate into your code, in particular the fact that is was forbidden to have links cross over each other or the connected aspect of the graph.

To ensure you could solve any grid of game, in the case where you could not be sure where to put a link, you had to be able to test several hypothesis (with a backtracking algorithm or similar).

Stats : 1% of finishers completed 100% of exercise 2 (average score for this exercise : 16%)