Jeśli nie wiesz, czym jest królowa w szachach, nie ma to większego znaczenia; to tylko nazwa :)
Twój wkład będzie kwadratem o dowolnej szerokości i wysokości zawierającym pewną liczbę królowych. Tablica wejściowa będzie wyglądać następująco (ta tablica ma szerokość i wysokość 8):
...Q....
......Q.
..Q.....
.......Q
.Q......
....Q...
Q.......
.....Q..
Na tej planszy jest 8 królowych. Gdyby było na przykład 7, 1 lub 10, plansza nie byłaby ważna.
Tutaj używamy .pustej przestrzeni i Qkrólowej. Zamiast tego możesz użyć dowolnego znaku spacji, który chcesz.
Dane wejściowe można zweryfikować jako poprawne i powinieneś wydrukować (lub zwrócić) prawdziwą wartość (jeśli nie jest poprawna, powinieneś wydrukować (lub zwrócić) wartość fałszu). Jest ważny, ponieważ żadna królowa nie znajduje się w tym samym rzędzie, kolumnie, przekątnej lub przeciw przekątnej jak inne .
Przykłady (nie wypisuj rzeczy w nawiasach):
...Q....
......Q.
..Q.....
.......Q
.Q......
....Q...
Q.......
.....Q..
1
...Q.
Q....
.Q...
....Q
..Q..
0
Q.
Q.
0
..Q
...
.Q.
0 (this is 0 because there are only 2 queens on a 3x3 board)
..Q.
Q...
...Q
.Q..
1
Q
1 (this is valid, because the board is only 1x1, so there's no queen that can take another)
Podkreślę, że dane wejściowe są prawidłowe tylko wtedy, gdy żadna królowa nie znajduje się w tym samym rzędzie, kolumnie, przekątnej lub anty-przekątnej jak inne .
Zasady
- Nigdy nie otrzymasz pustego wejścia
- Jeśli dane wejściowe zawierają mniej królowych niż pierwiastek kwadratowy obszaru planszy, nie są poprawne.
- Uwaga: nie ma prawidłowych rozwiązań dla płyty 2x2 lub 3x3, ale istnieje rozwiązanie dla każdej kwadratowej płyty o innym rozmiarze , gdzie szerokość i wysokość są liczbą naturalną.
- Dane wejściowe mogą być w dowolnym rozsądnym formacie, zgodnie z zasadami PPCG
- Dane wejściowe zawsze będą kwadratowe
- W przykładach użyłem 1 i 0, ale możesz użyć dowolnych wartości prawdziwości lub fałszowania (takich jak
Why yes, sir, that is indeed the caseiWhy no, sir, that is not the case)
Ponieważ jest to kod-golf , wygrywa najkrótszy kod!
{(x, y, v)}ze vw [., Q]być prawidłowy format wejściowy?
(0, 0, Q), (0, 1, .), (1, 0, Q), (1, 1, .)byłby trzecim przypadkiem testowym.