Cerință
Fie și două numere naturale. Fie numere naturale astfel încât . Fie un grid dimensional. Fiecare punct pentru care are asociată o valoare binară, inițial .
Într-o operație putem alege numere, astfel încât să avem . Valoarea tuturor punctelor care respectă se inversează (din în și din în ).
Fie o funcție oarecare. Se dorește ca în final configurația valorilor să respecte următoarea condiție:
Valoarea asociată unui punct să fie . Mai exact dacă un număr impar de sunt , atunci valoarea asociată punctului trebuie să fie . Altfel aceasta trebuie să fie .
Se cere numărul minim de operații necesare pentru a obține configurația dorită. Deoarece acest număr poate fi foarte mare se cere afișarea modulo .
Date de intrare
Pe prima linie se află și , numărul de dimensiuni și limita numerelor . Pe a doua linie se află numere, , separate prin spații. Pe a treia linie se află șirul de valori pentru funcția (corespunzătoare indicilor ), neseparate prin spațiu.
Date de ieșire
Să se afișeze numărul minim de operații necesare pentru a obține configurația.
Restricții și precizări
Exemplul 1
stdin
1 5
5
011010
stdout
4
Exemplul 2
stdin
3 6
4 6 1
0101010
stdout
12