Code Challenge
Розділ: програмування (індивідуальне)
Підготовка робіт: на фестивалі
Тривалість: 3 тури по 1,5 години
Завдання: 3 алгоритмічні завдання на кожен тур
Апаратне і програмне забезпечення
Використовуються такі системи програмування: Microsoft Visual Studio 6.0, Borland Delphi 7.0, Turbo Pascal 7, Turbo C++ 3. Ці системи будуть повністю встановлені на кожному комп'ютері.
Умови
Категорично забороняється використовувати
- Дискети, CD, Flash-cards, персональні комп’ютери, калькулятори, мобільні телефони, інші електронні носії інформації;
- Інтернет чи локальну мережу, окрім надсилання результатів для перевірки на сервер.
Журі не несе відповідальності за втрату файлів внаслідок збоїв обладнання чи помилок учасників.
Основні правила
Учасник повинен самостійно забезпечити себе комп’ютером (можливо, комп’ютер буде наданий технічним партнером, про що буде додатково повідомлено в новинах). Учасникам буде запропоновано для розв'язання не менше 3 задач. Тривалість туру складатиме 1,5 години. Змагання буде проходити в 3 тури. Журі має право продовжити тур у випадку непередбачених обставин. Після кожного туру складається рейтинг учасників, і до участі в наступному турі допускаються учасники, що знаходяться в верхній половині рейтингу.
Під час кожного туру учасники розв'язують запропоновані задачі. Розв'язком є програма (файл із вихідним текстом), складена на одній з дозволених мов програмування. Програма не повинна містити в собі інші файли чи модулі. Учасник може розв'язувати різні задачі на різних мовах програмування. Перевірка поданих розв'язків проводиться під час змагань. Учасники надсилають розв'язки до журі за допомогою наданого програмного забезпечення. Журі компілює отриманий розв'язок за допомогою пакетних компіляторів, тому всі опції компіляції, відмінні від замовчуваних значень, повинні бути зазначені у вихідному файлі.
У розв'язках задач заборонено:
1. Виводити яку-небудь інформацію на екран.
2. Використовувати розширену чи додаткову пам'ять і захищений режим процесора.
3. Використовувати читання і запис векторів переривань.
4. Створювати і працювати з будь-якими файлами, за винятком тих, котрі явно зазначені в умові задачі (вхідні і вихідні файли).
5. Працювати з підкаталогами.
6. Будь-яке використання мережевих засобів.
7. Використовувати будь-як інші засоби чи дії, що можуть порушити роботу програмного забезпечення олімпіади.
Перевіряючі програми використовують різні методи контролю за дотриманням даних вимог. Учасник, що порушив ці умови, дискваліфікується.
Перевірка розв'язків
Розв'язок перевіряється шляхом запуску на наборі тестів, що недоступний учасникам і є однаковим для всіх. Розв'язок зараховується в тому випадку, якщо він видає вірні відповіді на всі тести. Тестування проводиться автоматично, тому програми повинні суворо дотримуватися таких умов:
Вхідні дані вводяться з консолі (якщо не зазначено іншого)
Якщо не вказано інше, всі вхідні дані вважаються коректними й такими, що задовольняють обмеженням, вказаним в умові задачі.
Програма вихідні дані записує в стандартний потік виводу
Для кожної задачі вказується максимальний час виконання для одного тесту. Якщо в одному з тестів програма перевищила цей час, розв'язок вважається невірним.
В міру готовності учасник надсилає свої розв'язки до журі для перевірки. Після цього учасник може продовжувати роботу над іншими задачами. Після того, як журі перевірить розв'язок, учасник може отримати результат тестування через монітор. Учаснику повідомляється, зараховано розв'язок чи ні.
Підведення підсумків
Кожен тур проводиться за однаковими правилами. Виграє учасник, що набрав найбільшу кількість балів. У випадку рівності кількості балів, виграє учасник з найменшим штрафним часом. Бали за правильно розв’язану задачу обраховуються по формулі max(1, 5 - try), де try – кількість невірних спроб, які зробив учасник перед тим, як здати задачу. Якщо учасник зробив більше 4-х невірних спроб, то він отримує 20 штрафних хвилин за кожну спробу. Наприклад, якщо учасник на 20-ій хвилині правильно розв’язав задачу, але перед цим зробив 2 невірні спроби, то він отримає 3 бали і 20 хвилин штрафного часу. Якщо ж він здав задачу на 20-ій хвилині і зробив 6 невірних спроб, то він отримає 1 бал і 60 хвилин штрафного часу. Під час змагань учасники і гості можуть переглядати поточні результати всіх учасників. За традицією проведення даних змагань, для підвищення інтересу до церемонії нагородження, журі припиняє відновлення поточних результатів для учасників і гостей за одну годину до кінця змагань. Під час проведення змагань учасники можуть спілкуватися ТІЛЬКИ з представниками журі й організаційного комітету змагань. За порушення правил проведення змагань учасник може бути дискваліфікований.
Апеляції
Журі має виняткове право визначення вірності надісланих рішень, визначення переможців і дискваліфікації учасників. Журі розбирає питання, що виникають у результаті непередбачених подій і обставин. Рішення журі остаточні й оскарженню не підлягають. Журі не несе відповідальності за збереження файлів учасників. Набір тестів, на яких журі перевіряє розв'язки, не надається учасникам навіть після закінчення змагання. Протягом години після змагань учасник може направити в апеляційну комісію апеляцію у випадку виявлення невірного штрафного часу, втрати надісланого до журі розв'язку, і т.п. Журі повідомляє про своє рішення учаснику в будь-якому випадку.
Призові місця: 1ше, 2ге, 3тє.


