Back
Close

Learning Opportunities

This puzzle can be solved using the following concepts. Practice using these concepts and improve your skills.

Statement

This is a league based challenge.

W tej grze dostępnych jest kilka lig. Kiedy pokonasz Bossa otrzymasz dostęp do kolejnej ligi i następnych wyzwań. Powodzenia.

Przekształć szary, pusty teren w tętniącą życiem, kwiecistą łąkę. Twój sąsiad, oczywiście, wpadł na taki sam pomysł, ale przecież nie zrobi tego lepiej niż Ty! Udowodnij mu, że Twoja łąka przyciągnie więcej pszczół niż jego.


This is a temporarily accepted submission for the special event for high schools visiting the University of Wrocław. CodinGame staff is aware. After the event, the game will be taken down or updated to English.

  The Goal

Celem gry jest zebranie większej liczby punktów niż drużyna przeciwnika w wyznaczonym czasie. Punkty zdobywa się poprzez poszerzanie i ulepszanie swojego terytorium tak, aby przyciągnąć do niego pszczoły.

  Rules

Rozgrywka trwa 100 tur.

Mapa

Potyczka rozgrywa się na prostokatnej planszy o rozmiarze 19×9.
Pole planszy może przyjąć jeden z następujących typów:
  • 0, 1: pole zajęte przez jednego z graczy (0 to "ja", 1 to przeciwnik).
  • 2: pole neutralne.
  • 3: pole zawierające skałę. Nie można się na nim rozbudowywać. Plansza jest zawsze otoczona polami ze skałą. Skały nie występują wewnątrz planszy.
  • 4: pole zawierające ul. Nie można się na nim rozbudowywać.

Ule

Na planszy znajduje się losowa liczba uli (od 4 do 9). Pozycje uli są stałe, nie zmieniają się w czasie rozgrywki.

Obszary graczy

Każdy z graczy startuje z pewnym obszarem początkowym. Obszar można powiększać zajmując pola sąsiadujące z już posiadanym terenem. Można zajmować tylko pola neutralne.
W każdej turze gracz wyznacza współrzędne pola na które chce dokonać rozbudowy. Można wybrać pole które nie sąsiaduje z posiadanym terenem, wtedy automatycznie zostanie wyliczone najlepsze pole zmierzające w zadanym kierunku - i to na nie zostanie wykonana próba rozbudowy.
Obaj gracze ruszają się jednocześnie. W przypadku konfliktu (obaj gracze chcą zająć to samo pole) pole pozostaje neutralne.

Punktacja

W każdej turze, każdy ul może nagrodzić gracza jednym punktem. Gracz dostaje punkt jeśli jego teren jest bliżej (w metryce manhattańskiej) niż teren przeciwnika. W przypadku równej odległości do obu graczy, żaden z nich nie dostaje punktu.
Ostatecznym wynikiem jest sumaryczna liczba punktów zdobytych na przestrzeni całej rozgrywki.

🐞 Wskazówki dotyczące debugowania

  • Najedź kursorem na pole, aby zobaczyć więcej informacji na jego temat.
  • Dodaj tekst na końcu instrukcji, aby wyświetlić go na swojej części płotu.
  • Kliknij ikonę koła zębatego, aby wyświetlić dodatkowe opcje wizualne odtwarzacza.
  • W szczególności użyj trybu debug (Debug Mode), aby widzieć więcej informacji o stanie gry. Możesz również włączać i wyłączać siatkę.
  • Użyj klawiatury do kontrolowania odtwarzacza: spacja do odtwarzania/pauzy, strzałki do przesuwania się klatka po klatce.

  Game Input

Input w każdej turze
Kolejnych 171 linii (po jednej na każde pole mapy): 5 liczb oddzielonych spacją:
  • x: pozycja pola na współrzędnej x.
  • y: pozycja pola na współrzędnej y.
  • owner: właściciel pola (0 - mój teren, 1 - teren oponenta, 2 teren neutralny, 3 - skała, 4 - ul).
  • level: nieużywane w tej lidze.
  • bees: nieużywane w tej lidze.
Output
Pojedyncza linia zawierająca współrzędne pola w kierunku którego rozszerzamy swój obszar.

Opcjonalnie po każdej instrukcji można dołączyć wiadomość (message) do wyświetlenia w górnej części wizualizacji. W pełni wyświetlane będą komunikaty o długości nie większej niż 25, dłuższe wiadomości będą przycinane.
  • x y [message] aby rozszerzyć swój teren w kierunku pola x y.
Constraints
Czas odpowiedzi dla pierwszej tury: ≤ 1s
Czas odpowiedzi dla kolejnych tur: ≤ 50ms
Limit tur: 100

A higher resolution is required to access the IDE