Pentru această problemă vom calcula matricea $SG{~i,j~}$ care reprezintă valoarea _Sprague-Grundy_ asociată unei tablete de dimensiuni ({$i$}, $j$). Să vedem care este recurenţa care va satisface elementele matricei $SG$:
$SG{~i,j~} = mex(SG{~i,k~} ^ SG{~i,j-k~}, (1 ≤ k < j)$ mutarea întâi
$SG{~k,j~} ^ SG{~i-k,j~}, (1 ≤ k < i)$
$SG{~i,k~} ^ SG{~i,j-k-1~}, (1 ≤ k < j - 1)$ mutarea a doua
$SG{~k,j~} ^ SG{~i-k-1,j~}, (1 ≤ k < i - 1)$
$SG{~i-2,j-2~}) (i > 2 şi j > 2)$ mutarea a treia
<tex>SG_{i,j} = mex(SG_{i,k} \verb|^| SG_{i,j-k}, (1 \leq k < j)</tex> mutarea întâi
<tex>SG_{k,j} \verb|^| SG_{i-k,j}, (1 \leq k < i)</tex>
<tex>SG_{i,k} \verb|^| SG_{i,j-k-1}, (1 \leq k < j - 1)</tex> mutarea a doua
<tex>SG_{k,j} \verb|^| SG_{i-k-1,j}, (1 \leq k < i - 1)</tex>
<tex>SG_{i-2,j-2}) (i > 2 , j > 2)</tex> mutarea a treia
Acum, pentru a calcula numărul de mutări câştigătoare efectuăm asupra fiecărei tablete din fişierul de intrare toate mutările posibile care sunt cel mult de $4 • 100 + 1$ şi facem suma $XOR$ a valorilor Sprague Grundy pentru restul tabletelor neimplicate în mutare şi a tabletelor rezultate din mutare. Pentru a calcula $SG{~i,j~}$ trebuie sã parcurgem cel mult $2 • i + 2 • j + 1$ valori obţinute. Astfel, algoritmul de determinare al valorilor matricei $SG$ are ordinul de complexitatea $O(N^3^)$.
Complexitatea algoritmului care determină numărul de mutări câştigătoare este $O(N^2^)$.