Zgłaszanie | Wszystkie zgłoszenia | Najlepsze | Lista |
AL_07_11 - Matowanie |
Bajtocka akademia szachowa
W Bajtocji postanowiono otworzyć Akademię Szachową, której celem jest nauka Królewskiej Gry od podstaw. Kilku znanych trenerów poświęciło wiele godzin pracy, aby przygotować specjalne zadania dla początkujących adeptów. Na początek są to proste zadania matowe: mat wieżami lub hetmanem przy pomocy króla przeciw samotnemu królowi przeciwnika. Oczywiście nie są to trudne zadania, w każdym z nich mat powstaje po nie więcej niż dwóch posunięciach białych. Niestety wskutek nieporozumienia zadania, które znalazły się w wielkiej bazie danych nie zostały właściwie oznaczone.
Twoim zadaniem jest naprawienie tego. Dla każdego zadania masz oznaczyć, ile co najmniej posunięć mają wykonać białe, aby zakończyć partię matem. Oczywiście to one zaczynają. Przyda Ci się również informacja o tym, że dawno straciły prawo do roszady.
Ściąga z reguł gry w szachy:
- Mat jest sytuacją na szachownicy, w której król przeciwnik jest atakowany przez naszą figurę i nie może znaleźć sobie bezpiecznej ucieczki oraz nie może zabić atakującej go figury. Za bezpieczne pole uznajemy takie, które nie jest atakowane przez wrogie figury.
- Dwa króle nie mogą stać na sąsiadujących ze sobą polach.
- Posunięcia wykonuje się na przemian raz białe, raz czarne.
- W naszym zadaniu zakładamy, że białe nie mają prawa do roszady.
- Rozgrywka odbywa się na szachownicy o wymiarach 8x8, linie poziome są numerowane cyframi od 1 do 8, a pionowe małymi literkami od a do h
Więcej informacji można znaleźć pod adresem: http://pl.wikipedia.org/wiki/Zasady_gry_w_szachy
Wejście:
W pierwszej linii znajduje się jedna liczba całkowita d, 1<=d<=50, oznaczająca liczbę testów.
Każdy test składa się z liczby całkowitej n oznaczającej ilość figur na szachownicy, następnie w n kolejnych liniach podane będą położenia figur, białe figury będą oznaczone dużymi literami K- król, W- wieża, H-Hetman, mała litera k oznacza czarnego króla. Białe poza królem mogą mieć do dyspozycji jeden z następujących zestawów figur:
- Hetmana(damę)
- Jedną wieżę
- Dwie wieże
Wyjście:
Dla każdego testu należy wypisać w osobnych liniach ilość posunięć, które muszą wykonać białe, aby dać mata. Posunięcia mogą być wykonywane każdą z posiadanych figur. Możliwe odpowiedzi to: 0, 1, 2.
Przykład:
Dla danych wejściowych:
2
3
k g 8
K g 6
W f 7
3
K b 6
H d 7
k b 8
Należy wypisać:
2
1
Dodane przez: | Paweł Mroziński |
Data dodania: | 2013-06-07 |
Limit czasu wykonania programu: | 1s |
Limit długości kodu źródłowego | 50000B |
Limit pamięci: | 1536MB |
Cluster: | Cube (Intel G860) |
Języki programowania: | All except: ASM64 GOSU |
Pochodzenie: | http://szachowe.pl |
ukryj komentarze
2013-06-09 17:56:42 Pawe³ Mroziñski
Jeszcze jeden test: 1 4 W a 2 W a 1 K b 1 k h 1 out 2 |
|
2013-06-09 17:15:42 Pawe³ Mroziñski
Może kilka testów dodam: 4 3 k e 8 K e 6 H f 6 3 k e 8 K d 6 H f 6 3 K f 7 k h 7 H f 6 4 k a 8 K c 8 W c 7 W d 8 Out: 1 1 1 1 |
|
2013-06-09 13:32:19 Maciej Boniecki
W związku z awarią SPOJa przygotowaliśmy alternatywny ranking 7 rundy AlgoLigi. http://algoliga.pl/ranking/ |
|
2013-06-09 11:48:23 Pawe³ Mroziñski
Pytanie jest ile maksymalnie ruchów muszą zrobić białe. Jak jest mat to 0. białe robią ruch gdy nie ma mata. |
|
2013-06-09 11:21:28 Piotr W.
Jeśli jest ruch białych, to jak czarne mogą być zamatowane? Czarny król wszedł pod mata? |
|
2013-06-08 12:44:16 Pawe³ Mroziñski
W treści zadania jest napisane: "Możliwe odpowiedzi to: 0, 1, 2" 0 - Mat stoi na szachownicy 1 - Mat w pierwszym ruchu białych 2 - po dwóch ruchach, czyli czarny robi jeden ruch, a białe dwa. Innych możliwości nie ma. |
|
2013-06-08 12:28:01 Maciej Ho³ubowicz
zakładamy że król czarny rusza się tak żeby jak najbardziej wydłużyć partie? |
|
2013-06-08 11:43:54 Pawe³ Mroziñski
Zgodnie z treścią zadania zawsze będzie 3 lub 4. Czarne mają samotnego króla(k), a białe króla(K) plus jedną wieżę, albo dwie wieże albo hetmana. Czyli na szachownicy będzie jeden z zestawów figur:kKH,kKW,kKWW |
|
2013-06-08 11:35:06 Maciej Ho³ubowicz
jakie jest maksymalne n ? |