1st Iranian ICPC Challenge

ICPC Challenge

The ICPC Challenge gives programming teams attending the Tehran Regional Contest a chance to work on a different kind of problem. Working with their coaches, teams implement a player and compete against other teams’ players in a game. For this challenge, we use the same game used in the official ICPC 2013 Challenge, called CodeRunner.

There is a 14-days coding phase, starting from December 2 to the end of the day on December 16. Competitors can develop and test their players during this time. After participants submit the final version of their players on December 16, we will run a double elimination tournament to determine the winner. The tournament will be presented as part of the 2013 ICPC Regional Contest – Tehran Site in December 19 at Sharif University of Technology.

The Game

The game, CodeRunner, is a two-player game. Two players, one red and one blue, each control a runner, which can move in the two-dimensional cellular world and collect gold. Enemies also inhabit the world, moving around and killing the runners if they catch them. The runners earn points for collecting gold, killing enemies and their opponent runner, and for visiting individual cells of the world for the first time.

A match of CodeRunner proceeds through a series of turns. Games can vary in duration, from as few as 400 to as many as 1200 turns. At the start of each turn, both players are given a description of the current state of the game. For each turn, both players choose a move for their runners. Then, based on the players’ moves, the game updates its state, and then the next turn begins.

The enemies move around the world just like the players’ runners. However, the enemies move more slowly than the runners and their movement is controlled by the game rather than the players.

CodeRunner

CodeRunner has a playing field that looks something like the following figure. A red player and a blue player compete to collect gold, while avoiding several enemies that are moving around the map. Each player directly controls a single runner character, who can move left and right, climb up and down ladders and break temporary holes in the floor with a large hammer. In addition to collecting gold, players earn points by exploring the map and trapping enemies and their opponent in holes. The game rules below describe how to examine the state of the map and control the runner. All you have to do is figure out how to win.

Resources

Rules

  • Your program must be the sole work of your team. Any help from external sources is considered as fraud and will result in disqualification.
  • Any attempt to access other system resources (e.g., reading from files elsewhere, creating network connections, starting new processes) will result in disqualification.
  • The executive team reserves the right to change any of these rules at any time.
  • You are supposed to check the ACM blog regularly for any updates.
  • Upon submitting your code, you agree to these terms and conditions.

Credits

The 2013 ICPC Challenge is designed by a team from Saratov State University. Nikolay Kuznetsov and Dmitry Matov, both students at Saratov and former ICPC world finalists and medalists, worked with Mike Mirzayanov, their former coach and head of the Programming Competitions Training Center at Saratov, to develop the idea for Coderunner.