Олимпиада «Физтех.Код будущего»
Отборочный тур 2025-2026

Посетите сайт олимпиады для получения дополнительной информации.

Содержание сайта

Новое в этом году

Вход в отборочный тур

Тур продолжается до 12 ноября 2025 года включительно.

Ссылка на тур для всех классов: https://codeolymp.ru/new-client?contest_id=5.

Если вы не можете войти, проверьте, что

Правила проведения предметного тура

Что можно?

При решении задач можно использовать любой код, находящийся в открытом доступе, который был опубликован до начала тура (22.09.2025).

Можно использовать любые среды разработки, кроме функции GPT (например, нельзя использовать cursor, copilot и похожие инструменты).

Что нельзя?

Нельзя обсуждать решения задач до окончания тура. Запрещается публиковать свои решения до окончания тура.

Нельзя использовать любые нейросети для решения задач (ChatGPT или аналоги).

Нельзя дестабилизировать работу тестирующей системы или делать какие-либо попытки взлома. Нельзя получать доступ к учетным записям других участников, а также делиться своим паролем.

Нельзя списывать.

Последствия

При доказанном факте передачи решения между участниками или использования нейросетей участнику могут быть снижены баллы за отдельные задачи или за весь тур (в случае списывания - всем причастным).

Формат отборочного этапа

В задачах 1-8 нужно написать код, который решает поставленную задачу. В протоколе решения будет написан вердикт тестирования на каждом тесте, на котором программа запускалась. В каждой задаче есть несколько тестов из условия и скрытые тесты, разбитые на группы. За успешное прохождение всех тестов группы (и обязательных предыдущих групп, если они есть) вы получите указанное в условии количество баллов. Всего за каждую задачу можно получить до 100 баллов.

Посмотреть свой текущий балл за тур вы можете в разделе «Итог» в Ejudge.

Задачи упорядочены по возрастанию сложности по мнению жюри, которое может не совпадать с мнением участников. Мы настоятельно рекомендуем прочитать все условия и подгруппы, так как некоторые подгруппы сложных задач могут быть проще, чем простые задачи.

Возможные результаты проверки решений

Описание возможных результатов проверки ваших решений, которые можно увидеть по ссылке «Просмотреть протокол».

Результат Что это означает Возможная причина

OK

Программа выдала правильный ответ на этом тесте
  • Программа корректна;
  • Решение неверное, но у жюри слабая система тестов.

Неправильный ответ

Программа вывела неправильный ответ
  • Неверный алгоритм решения;
  • Ошибка в реализации алгоритма решения.

Ошибка компиляции

Исполняемый файл не был создан при компиляции. В этом случае запуск решения на тестах не производится.
  • Синтаксическая ошибка в программе;
  • Неверно указан язык программирования;
Превышено максимальное время работы

Программа превысила лимит времени работы
  • Неэффективное решение;
  • Ошибка в программе (программа зацикливается);
  • Ошибка в считывании данных (программа ожидает ввода данных, хотя входной поток данных уже закончился);
  • Программа ожидает от пользователя нажатия на клавишу после вывода ответа.
  • Программа написана на языке, который не может считать ввод или выполнить логику решения за отведённое ограничение по времени.

Превышен лимит по памяти

Программа превысила лимит используемой памяти
  • Неэффективное решение;
  • Ошибка в программе;
  • Бесконечная (или очень большая) рекурсия;
  • Ошибки при работе с указателями в C/C++ также могут диагностироваться, как "Превышен лимит по памяти"

Ошибка выполнения

Программа совершила некорректное действие в ходе исполнения
  • Некорректное арифметическое действие (деление на ноль, извлечение корня из отрицательного числа, переполнение переменной).
  • Ошибка при работе с памятью и структурами данных (выход за границы массива, обращение к некорректным указателям, удаление несуществующего элемента из структуры данных, переполнение стека, превышение лимита доступной памяти);
  • Нарушение правил олимпиады (работа с файлами кроме input.txt и output.txt, вызов сторонних программ);
  • Бесконечная (или очень большая) рекурсия;
  • Синтаксические и иные (например, обращение к несуществующей переменной) ошибки в программах на Python и других интерпретируемых языках;
  • В программе явно указан ненулевой код возврата.

Неправильный формат вывода

Вывод программы не соответствует условию задачи
  • Программа выводит ответ в формате, не соответствующем условию задачи;
  • Программа не вывела ничего;
  • Программа выводит результат в файл, а не на стандартный вывод;
  • Ошибка в программе (например, программа вывела ответ дважды);
  • В программе есть отладочный вывод;
  • Программа выводит лишние сообщения типа "Введите число" или "Ответ".
  • Программа должна вывести числа в одной строке через пробел, а вывела их в разных строках или наоборот;
  • Программа должна вывести целое число, а выводит действительное число, запись которого содержит десятичную точку, из-за того, что программа использует действительный тип данных вместо целочисленного.

Нарушение правил безопасности

Программа нарушает правила олимпиады
  • Нарушение правил олимпиады;
  • Ошибка в программе;
  • Вызов system("pause") в программах на C/C++.

Примеры реализации ввода-вывода

Ниже приведены примеры программы, вычисляющей сумму двух целых чисел с использованием целых чисел. Входные числа записаны в двух разных строках.

1С:Элемент

метод Скрипт()
    знч Ввод = новый ЧтениеДанных(новый Файл("input.txt", "").ОткрытьПотокЧтения())
    знч A = новый Число(Ввод.ПрочитатьСтроку())
    знч B = новый Число(Ввод.ПрочитатьСтроку())
    Консоль.Записать(A + B)
;

Python

a = int(input())
b = int(input())
print(a + b)

C++

#include <iostream>
using namespace std;

int main()
{
  int a, b;
  cin >> a >> b;
  cout << a + b << "\n";
  return 0;
}