stgatilov's blog

By stgatilov, history, 8 years ago, translation, In English

This year contestants implemented AI to manage robotic vacuum cleaners.

The game has massive-multiplayer style, which is strongly different from our previous games, which were usually either single-player (e.g. in 2010) or player-vs-player (e.g. in 2013). All 50 participating teams compete altogether in every game. Each player manages 10 robots, which drive on the round field. If a robot collides with another smaller robot (or with passive immobile "food"), then the former devours the latter, and its area is increased by the area of the devoured object. The player who devours everything wins (this surely happens since game field is gradually contracting). Game score of arbitrary player is defined as the overall area of all his robots at the best (for him) time moment. As size of robot increases, its speed decreases. That's why the game has turbo mode, which allows to double robot speed from time to time.

In order to avoid technical problems with running 50 solutions simultaneously, we decided to restrict the competition to a single programming language, which is Lua language. This is not the first time when we have to ask contestants to use this language. The game is launched in a single OS process, and each player lives in its own sandboxed Lua-state. As a result, it is possible to run a game with 50 players even locally on an ordinary computer.

The game was launched in a loop approximately every three minutes during the tour. Only the most recent solution of each team took part in the game. Since about the middle of the tour we started to show the results of current games on a big TV or a projector in each classroom. Supporters were stuck near the TV in the jury room, which looked approximately like this:

The TV in jury room

Of course, the most interesting games were in the middle of the competition, when players' strategies changed dramatically. During some time these games can be downloaded from the server, for instance using the "download.bat" script. Here are the videos of several games (youtube-playlist of all games; good quality videos can be downloaded from here):

  1. An hour after the contest started: run 100

  2. Two hours after the start: run 150

  3. Three hours after the start: run 175

  4. Three hours and a half after the start: run 200

  5. Four hours and a half after the start: run 230

  6. After the tour ended: run 256

Now you can download (related to the game):

  1. The full archive: source codes of the game, participants' solutions, Windows binaries.

  2. Materials: only Windows binaries.

Full text and comments »

  • Vote: I like it
  • +17
  • Vote: I do not like it

By stgatilov, 14 years ago, translation, In English

Problem A: Answer is floor(N*M*0.5). Since there is N*M cells on the board and each domino covers exactly two of them we cannot place more for sure. Now let's show how to place exactly this number of dominoes. If N is even, then place M rows of N/2 dominoes and cover the whole board. Else N is odd, so cover N-1 row of the board as shown above and put floor(M/2) dominoes to the last row. In the worst case (N and M are odd) one cell remains uncovered.

Full text and comments »

  • Vote: I like it
  • +37
  • Vote: I do not like it

By stgatilov, 14 years ago, translation, In English

Good afternoon.

One more codeforces format round takes place this evening. I'm the author of the contest problems. Artem Rakhov and Maria Belova helped me to prepare the problems. Great thanks to them and all codeforces "fighters"!

I wish you good luck and funny hacks!

P.S:  This round won't be rated. So your ratings won't change. That's because of severe problems with codeforces server. Read here for explanation.


Full text and comments »

Announcement of Codeforces Beta Round 47
  • Vote: I like it
  • +49
  • Vote: I do not like it

By stgatilov, 14 years ago, translation, In English

Wide siberian olympiad is over. Here is the link for the first day materials archive:

http://olimpic.nsu.ru/widesiberia/archive/wso11/2010/rus/arcade_full_archive.zip

Game logs are stored separately.

In the first tour contestants were requested to write a bot for a simple arcade shooter like crimsonland survival.


Full text and comments »

  • Vote: I like it
  • +8
  • Vote: I do not like it