Nu aveti permisiuni pentru a descarca fisierul grader_test10.in
Diferente pentru numerele-sprague-grundy intre reviziile #12 si #11
Nu exista diferente intre titluri.
Diferente intre continut:
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$:
<tex>SG_{i,j} = mex(SG_{i,k}\verb|^|SG_{i,j-k}, (1\leqk < j)</tex>mutarea întâi<tex>SG_{k,j}\verb|^|SG_{i-k,j}, (1\leqk < i)</tex><tex>SG_{i,k}\verb|^|SG_{i,j-k-1}, (1\leqk < j - 1)</tex>mutarea a doua<tex>SG_{k,j}\verb|^|SG_{i-k-1,j}, (1\leqk < i - 1)</tex><tex>SG_{i-2,j-2}) (i > 2,j > 2)</tex>mutarea a treia
$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
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^)$.
