Pentru a calcula distanţa minimă de la poziţia iniţială a şoricelului până la poziţia caşcavalului, vom utiliza o coadă C. În coadă vom reţine poziţiile "vizitate" (la care şoricelul a ajuns deja) în ordinea vizitării acestora.

struct Pozitie C[DMAX*DMAX];

Iniţial, în coadă plasăm poziţia de start a şoricelului.

Cât timp şoricelul nu a ajuns în poziţia în care se află caşcavalul:

Felicitări! Şoricelul a descoperit cel mai scurt drum până la brânză.
Şoricelul nu mai are unde să se ducă. El nu poate ajunge la brânză.