|
|
|
Konkurs - Specyfikacja 2003
Każdy zespół wykonuje dwa smoki
Smok powinien być zaimplemtntowany w jednym pliku smoka o nazwie:
grupa_zespół.cpp wg przydzielonych nazw
C_1.cpp | Robaszek&Ciesielski |
C_2.cpp | Jaros&Jaros |
C_3.cpp | Antoniak&Maciejewski |
C_4.cpp | Dębski&Koperski |
C_5.cpp | Betke&Ciechurski |
C_6.cpp | Śliwiński&Morawski |
C_7.cpp | Kowalski |
Osoby z poza listy otrzymają unikalne nazwy przy zgłoszeniu
Każdy zespół tworzy dwa algorytmy-smoki o nazwach Dragongrupa_zespół_1
oraz Dragongrupa_zespół_2 (np. grupa C_1 tworzy funkcje o nazwach:
i DragonC_1_2)
W szczególności obie funkcje mogę wykorzystywać ten sam algorytm
Funkcja smoka powinna być typu: int ()(TDGState) struktura TDGState
jest zdefiniowana w pliku dragon.h
Funkcja zwraca wartość int o następujących znaczeniach:
0 - idź na przód
1 - skręć w prawo
2 - skręć w lewo
kierunek jest określany wzgędem kierunku ruchu smoka, jeżeli wartość zwracana
jest dodatkowo zwiększona o 8 to znaczy, że smok zionął ogniem
Jeżeli funkcja smoka zwróci wartość z poza zbioru {0,1,2,8,9,10} przyjmuje się,
że zwróciła ona 0
Smok może ziać ogniem nie częściej niż co DG_GROW jednostek czasu
W obrębie pliku smoka wolno definiować dowolne inne funkcje i struktury danych
jednak każda z nich (poza właściwymi funkcjami smoków) powinna mieć nazwę
rozpoczynącą się od przedrostka grupa_zespół
Nie wolno używać zmienych statycznych
Wykonakie pojedynczego ruchu nie może trwać dłużej niż ~1 sek
(na sprzęcie dostępnym w laboratorium)
Nie wolno wysyłać na konsolę ani pobierać z konsoli żadnych danych
Próba odwołania się lub modyfikacji elementów nie przekazanych do funkcji
smoka jako paramerty jest 'nie fair' i skutkuje dyskwalifikacją
Smok jest zgodny ze specyfikacją jeżeli spełnia wszystkie powyższe warunki,
oraz w teście solo (bez przeciwnika na arenie) potrafi chodzić bez wpadki przez
5000 jednostek czasu (przy przyroście równym 20)
|
|
|
|
|