Es waren einmal viele fleißige Zwerge, die in einem stockdunklen Bergwerk rote und blaue Edelsteine abbauten. Da es so dunkel war, konnte kein Zwerg erkennen, welchen Stein er oder seine Zwergenfreunde abbauten. Jeder Zwerg konnte nur einen Stein auf einmal schleppen. Um zum Steinlagerplatz zu kommen, mussten die Zwerge an einen Zwergenmonster vorbei, das für sein Leben gerne Zwerge fraß. Das Zwergenmonster hörte zwar gut, aber dafür sah es schlecht. Es bemerkte die Zwerge nur, wenn öfter als einmal ein Zwerg mit einem roten Edelstein neben (vor, hinter,…) einem Zwerg mit einem blauen Stein ging.
Wenn die Zwerge das Bergwerk verliesen mussten sie sofort über eine Brücke über die nur ein Zwerg auf einmal gehen konnte. Dahinter war eine Klippe auf der sich die Zwerge nun so aufstellen mussten, dass eben nicht öfter als einmal ein blauer Edelstein neben einem roten zu stehen kam damit sie anschliessend so sortiert unbehelligt zum Steinlagerplatz gehen konnten. Damit der Zwerg der jeweils die Brücke überquerte sah, welche Steine die Zwerge auf der Klippe trugen, stellten diese sich mit dem Rücken zur Brücke auf.
WIE WEISS NUN DER ZWERG DER GERADE DIE BRÜCKE ÜBERQUERT (UND DIE FARBE SEINES STEINES NICHT KENNT) AN WELCHER STELLE DER ZWERGENREIHE ER SICH EINORDNEN SOLL, DAMIT DAS ZWERGENMONSTER NICHTS MERKT?
Tipp für Programmierer: Bei der Lösung handelt es sich um einen einfachen Sortieralgorithmus.