О нас
Абитуриентам
Библиотека
E-библиотека
Актуально
 Проекты
Нелинейная динамика
Крестики-нолики
 РТУ
Главная страница
ORTUS
 Академическая сеть
Вход
Правила    Download    Участники    Турнир   
lv ru


КРЕСТИКИ-НОЛИКИ



1. Правила игры
1.1. игра проводится на клеточном поле размером 10 на 10 ячеек;
1.2. игроки по очереди размещают в любой свободной ячейке поля свои фигуры (крестики или нолики);
1.3. игрок не может пропустить ход;
1.4. первый ход делает тот кто играет крестиками;
1.5. игра заканчивается победой одного из игроков если его фигуры заняли пять смежных ячеек поля, расположенные по вертикали, горизонтали или любой из диагоналей;
1.6. игра заканчивается вничью если на поле не осталось ни одной свободной ячейки и ни один из игроков при этом не выиграл;
1.7. игра заканчивается победой одного из игроков если его противник не смог сделать свой ход в отведенное время (5 секунд), отказался от своего хода или попытался сделать недопустимый ход.
2. Участники
2.1. участвовать в турнире могут авторские программы, написанные студентами младших курсов университетов или школьниками;
2.2. к участию в турнире допускаются программы, прошедшие предварительную проверку на корректность работы, отсутствие вирусов и соответствие требованиям к интерфейсу;
2.3. для участия в турнире необходимо передать организаторам исполнимый модуль программы (.exe) и все необходимые для его работы вспомогательные файлы и динамические библиотеки (за исключением стандартного набора API операционной системы);
2.4. программа должна быть рассчитана на работу под управлением операционной системы MS Windows 2000;
2.5. программа может создавать, читать и удалять любые файлы, расположенные в текущем каталоге запуска;
2.6. программа не должна пытаться получать доступ к файлам, расположенным в других каталогах компьютера;
2.7. программа может быть написана на любом языке программирования, допускающем создание автономных 16 или 32 разрядных консольных приложений для MS Windows (Pascal, Object Pascal - Delphi, C, C++, C#, ...).
3. Интерфейс программы
3.1. программы участников во время турнира будут запускаться под управлением программы-менеджера и для обмена информацией с ним должны обеспечить определенный интерфейс;
3.2. менеджер предоставляет возможности для реализации двух типов интерфейсов: файловый и консольный;
3.3. файловый интерфейс подразумевает обмен информацией между менеджером и программой через текстовые файлы:
3.3.1. при запуске программы менеджер в качестве параметров командной строки указывает три значения: 1 - команда X, 0 (ноль) или INFO, 2 - имя файла с текущим состоянием игрового поля, 3 - имя файла в который необходимо поместить ответ программы;
3.3.2. в ответ на команды X или 0 программа должна проанализировать текущее состояние поля, разместить на нем фигуру X или 0 и записать координаты своего хода в файл ответа;
3.3.3. координаты хода записываются в виде двух символов - латинской буквы, обозначающей столбец (A...J), и цифры, обозначающей строку (0..9), таким образом допустимыми координатами хода являются A0...J9;
3.3.4. программа не обязана корректировать текущее состояние поля в исходном файле;
3.3.5. файл состояния поля содержит 10 строк по 10 символов в каждой строке, пустая ячейка обозначается символом точка ('.'), ячейка, занятая фигурой крестик - большой латинской буквой X, и ячейка, занятая фигурой нолик - символом ноль ('0');
3.3.6. в ответ на команду INFO программа должна записать в файл ответа информацию об авторе: в первую строку имя и фамилию, во вторую - название ВУЗа и группы (школы и класса);
3.3.7. при записи имени, фамилии и названия ВУЗа допускается использование только латинского алфавита;
3.3.8. на принятие решения о ходе программе отводится 5 секунд, отсчет времени начинается с момента запуска программы и завершается с ее завершением;
3.3.9. по истечении отведенного времени программа завершается принудительно;
3.3.10. если после завершения программы в файле ответа не будут находится координаты верного хода - программе засчитывается поражение.
3.4. консольный интерфейс подразумевает обмен информацией между менеджером и программой через консоль (устройства stdin и stdout):
3.4.1. для определения текущего состояния поля программа должна вывести на консоль строку "field?" и затем прочитать с консоли 10 строк по 10 символов в каждой строке, пустая ячейка поля обозначается символом точка ('.'), ячейка, занятая фигурой крестик - большой латинской буквой X, и ячейка, занятая фигурой нолик - символом ноль ('0');
3.4.2. для определения типа собственных фигур программа должна вывести на консоль строку "figure?" и затем прочитать с консоли строку из одного символа, если программа должна играть крестиками, то прочитанным символом будет большая латинская буква X, ноликами - символ ноль ('0');
3.4.3. для определения хода противника программа должна вывести на консоль строку "step?" и затем прочитать с консоли строку из двух символов, обозначающих координаты хода противника;
3.4.4. координаты собственного хода программа должна вывести на консоль в виде строки в начале которой записано "step!" (например "step! B7");
3.4.5. координаты хода записываются в виде двух символов - латинской буквы, обозначающей столбец (A...J), и цифры, обозначающей строку (0..9), таким образом допустимыми координатами хода являются A0...J9;
3.4.6. если первый параметр командной строки программы INFO то программа должна вывести на консоль информацию об авторе: в первую строку имя и фамилию, во вторую - название ВУЗа и группы (школы и класса) и завершить свою работу;
3.4.7. при записи имени, фамилии и названия ВУЗа допускается использование только латинского алфавита;
3.4.8. на принятие решения о ходе программе отводится 5 секунд, отсчет времени начинается с момента получения ответа на вопрос о ходе противника (для первого хода от момента запуска программы) и завершается получением координат собственного хода;
3.4.9. по истечении отведенного времени программа завершается принудительно и ей засчитывается поражение.
4. Проведение турнира
4.1. турнир проводится в сроки определенные организаторами в три этапа;
4.2. во время всех этапов соревнование между участниками проводятся под управлением программы-менеджера, которая должна быть опубликована организаторами до начала первого этапа турнира;
4.3. первый этап - подача заявок, во время этого этапа участники передают организаторам свои программы, которые проверяются на наличие вирусов и корректность работы и включаются в список участников;
4.4. для подтверждения корректности работы программы она должна выиграть у базовой программы представленной организаторами и опубликованной до начала турнира;
4.5. базовая программа реализует простейший алгоритм случайного выбора координат хода, ее исходные коды также должны быть опубликованы организаторами до начала турнира;
4.6. второй этап - проведение турнира, во время этого этапа каждой программе-участнику предлагается сыграть с каждой из программ-участниц 5 партий;
4.7. каждая партия играется два раза - один раз партию начинает одна программа, второй раз - другая;
4.8. первая партия начинается с пустого поля, оставшиеся четыре - с частично заполненного;
4.9. расположение фигур для четырех партий заранее участникам не известны и публикуются только после начала второго этапа турнира;
4.10. в каждой партии разыгрываются 4 очка - победа оценивается в 2 очка, ничья в 1 и поражение в 0 очков;
4.11. третий этап - финал турнира, в этот этап попадают три участника, набравших наибольшее количество очков (при равных количествах очков проводятся дополнительные партии);
4.12. в финале проводятся по 3 партии (одна с пустого поля и две с частично заполненных полей) между каждыми двумя участниками по тем же правилам, что и во втором этапе;
4.13. победители определяются по результатам финала и "допинг-контроля";
4.14. целью "допинг-контроля" является проверка авторства финальных программ;
4.15. во время "допинг-контроля" авторы финальных программ должны предоставить исходные коды собственных программ и ответить на вопросы жюри и участников, решение о прохождении "допинг-контроля" принимается членами жюри;
4.16. первые два этапа проводятся заочно, третий - очно;
4.17. во время проведения первого этапа участники могут менять свои программы, изменение программ после начала второго этапа не допускается;
4.18. участникам, попавшим в финал, разрешается исправить программы до начала третьего этапа;
4.19. победители турнира награждаются призами.
5. Сроки проведения турнира
5.1. первый этап - с 1.12.2004 до 10.12.2004
5.2. второй этап - с 13.12.2004 до 14.12.2004
5.3. третий этап - 17.12.2004
6. Организаторы турнира
6.1. организатором турнира является Даугавпилсский филиал Рижского Технического Университета (Даугавпилс, Смилшу-90, ауд. 409);
6.2. вся информация о турнире размещается в Internet-е по адресу www.politeh.lv;
6.3. связаться с организаторами можно по адресу электронной почты Xand0@politeh.lv или по телефону 5442466;
6.4. на время проведения третьего этапа создается жюри.





--==! Created by : Vadim Andrijevsky !==--