[This puzzle just got bumped to the front page due to another answer being added, so I just saw it for the first time]
This mainly expands on ghosts_in_the_code's answer.
The prisoner who is invited into the room the first day first puts the cube to a solved state (if it is not already in such a state), which has a "cube number" of zero.
That prisoner, and each subsequent visitor on their first visit to the room, increments the "cube number" by 1.
On a repeat visit, if the plans are secret from the warden, and they don't want to give the game away, they can play with the cube and leave it in a different representation of the same number it showed when they arrived.
The "cube number" is determined by
by assigning the following scores to the squares visible on the face of the cube with a white square in the middle:
White = 0, Red = 1, Yellow = 2, Blue = 5, Green = 10, Orange = 25.
The solving machine will be particularly useful on
days that are a multiple of 5, and especially so on days that are a multiple of 25, as they can quickly return to a completely white face and put the relatively small number of non-white squares required on it.
The prisoner who, on entering the room for the first time after at least 100 days have elapsed, sees the cube scoring of 99 - e.g.
The white face looks like
or
,
can either make the declaration immediately, or leave the cube showing a score of 100.
The next prisoner to visit would immediately know on looking at the cube that all 100 prisoners have been in the room at least once (and left and gone back to their cells).
This leaves 1 extra day beyond the absolute minimum, in case the warden starts being tricksy - "no, you're still in the middle of your visit, so not all 100 have visited yet.".
This scheme also allows for a check mechanism as follows - if at any time:
-
any prisoner on arriving in the room (other than on the first day) sees a score higher than the number of days elapsed since the start, or
-
a prisoner on a repeat visit sees a lower score on the cube than last time they visited, or
-
a prisoner on a repeat visit sees a score higher than the number of days elapsed since their previous visit plus the score they saw on their previous visit
They may assume that someone has been tampering with the cube - either the warden, or another prisoner who failed to follow the plan correctly (if they're not ABSOLUTELY sure they detected tampering, and the state of the cube otherwise seems valid, they should continue as normal). They can then attempt to signal this to other prisoners by leaving the cube showing a score higher than 100, or by leaving the cube solved. They can do this on any future visits too, to maximise the chance of other prisoners discovering the tampering.
Whilst the puzzle will not be able to be solved once tampering is detected, they at least avoid risking everyone being executed because one of the other prisoners made a mistake or a sabotage occurred...
The marker will be used
by each prisoner to keep track of how many days have passed, and what the last thing they saw on the cube was, in order to aid the tamper-detection strategy.
... or more simply to keep a reminder of how the scores work.