Podrobná specifikace toho, co musí hráč umět a jak musí vypadat, aby mohl hrát turnaj s ostatními.
Odevzdávat budete ZIP archív s vaším modulem player.py
a případně se všemi moduly, které tento modul importuje. Tyto soubory musí být v kořeni archívu, archív nesmí obsahovat žádné adresáře!
ZIP archív (a jen tento soubor) nahrajete do BRUTE.
Hráče (v souboru 'player.py') implementujete ve formě třídy MyPlayer
, která bude poskytovat tyto metody:
metoda | vstupní parametry | výstupní parametry | vysvětlení |
---|---|---|---|
__init__ | my_color (moje barva), opponent_color (barva soupeře) | žádné | Vytvoření instance hráče. Hráč vždy dostane barvu vlastních kamenů my_color a barvu soupeřových kamenů opponent_color . Barva kamene je buď hodnota 0 nebo 1. |
move | board (n x n matice hrací plochy) | r , c (row, column souřadnice Vašeho tahu v tuple(n-tici) se dvěma inty) | Vygenerování tahu. Na vstupu dostanete současný stav hrací plochy board , který je reprezentován dvourozměrným seznamem. Metoda vrací tuple(n-tici) délky 2 (obe cisla typu int) se souřadnicemi tahu - například (0,0), čímž umístíte svůj kámen na pozici board[r][c] . Pokud není možné zahrát validní tah, metoda vrací None. Hodnoty obsažené v board jsou -1 pro prázdné políčko a 0/1 pro barvy již umístěných kamenů. Maximální setrvání v metodě je 1 sekunda. |
name
s username studenta (například 'novakjan').
Příklad třídy MyPlayer:
class MyPlayer: '''Hrac hraje nahodne''' def __init__(self, my_color,opponent_color): self.name = 'username' #username studenta def move(self,board): return (*,*) #pozice kam hráč umisťuje svůj kámen