LUXCODE ← Все этапы олимпиады
✦ Всероссийская олимпиада по программированию

Демонстрационный вариант заданий

28 задач трёх уровней сложности — для ознакомления с форматом олимпиады

LUXCODE · Сезон 2026/2027

Это демонстрационный набор заданий. Он показывает формат условий и уровни сложности будущей олимпиады. Решать задания в этом варианте не нужно — здесь нет проверки решений и системы отправки кода; задачи можно решать на любом языке программирования, приём и автоматическая проверка решений будут реализованы к отборочному этапу. Итоговый банк заданий может отличаться по содержанию.

Содержание

Уровень 1 — 20 задач

Уровень 2 — 5 задач

Уровень 3 — 3 задачи

Уровень 1

Базовые конструкции: условия, циклы, строки, массивы, простая математика

Задача 1.1

Чётность числа

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано целое число N. Определите, чётное оно или нечётное.

Формат входных данных

Одно целое число N.

Формат выходных данных

Выведите «ЧЁТНОЕ», если число чётное, и «НЕЧЁТНОЕ» — если нечётное.

Ограничения

−10⁹ ≤ N ≤ 10⁹

Пример входных данных
7
Пример выходных данных
НЕЧЁТНОЕ
Задача 1.2

Сумма цифр числа

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано натуральное число N. Найдите сумму его цифр.

Формат входных данных

Одно натуральное число N.

Формат выходных данных

Одно целое число — сумма цифр N.

Ограничения

1 ≤ N ≤ 10¹⁸

Пример входных данных
193
Пример выходных данных
13
Задача 1.3

Наибольшее из трёх чисел

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Даны три целых числа. Найдите наибольшее из них.

Формат входных данных

Три целых числа через пробел.

Формат выходных данных

Одно число — наибольшее из трёх.

Ограничения

−10⁹ ≤ значения ≤ 10⁹

Пример входных данных
4 9 2
Пример выходных данных
9
Задача 1.4

Разворот строки

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка. Выведите её символы в обратном порядке.

Формат входных данных

Одна строка длиной от 1 до 1000 символов, без пробелов.

Формат выходных данных

Перевёрнутая строка.

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
робот
Пример выходных данных
тобор
Задача 1.5

Подсчёт гласных в строке

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка из строчных русских букв. Посчитайте количество гласных букв (а, е, ё, и, о, у, ы, э, ю, я).

Формат входных данных

Одна строка длиной от 1 до 1000 символов.

Формат выходных данных

Одно целое число — количество гласных.

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
медведь
Пример выходных данных
2
Задача 1.6

Сумма элементов массива

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан массив из N целых чисел. Найдите сумму всех его элементов.

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел через пробел.

Формат выходных данных

Одно число — сумма элементов массива.

Ограничения

1 ≤ N ≤ 10⁵; −10⁴ ≤ элементы ≤ 10⁴

Пример входных данных
5
3 1 4 1 5
Пример выходных данных
14
Задача 1.7

Максимальный элемент массива

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан массив из N целых чисел. Найдите наибольший элемент.

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел через пробел.

Формат выходных данных

Одно число — максимальный элемент массива.

Ограничения

1 ≤ N ≤ 10⁵; −10⁴ ≤ элементы ≤ 10⁴

Пример входных данных
5
3 1 4 1 5
Пример выходных данных
5
Задача 1.8

Проверка строки на палиндром

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка. Определите, является ли она палиндромом — то есть читается ли одинаково слева направо и справа налево.

Формат входных данных

Одна строка длиной от 1 до 1000 символов.

Формат выходных данных

«ДА», если строка палиндром, иначе «НЕТ».

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
шалаш
Пример выходных данных
ДА
Задача 1.9

Факториал числа

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано целое число N. Вычислите N! (произведение всех целых чисел от 1 до N).

Формат входных данных

Одно целое число N.

Формат выходных данных

Одно число — значение N!.

Ограничения

0 ≤ N ≤ 20

Пример входных данных
5
Пример выходных данных
120
Задача 1.10

Количество делителей числа

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано натуральное число N. Найдите количество его натуральных делителей (включая 1 и само N).

Формат входных данных

Одно натуральное число N.

Формат выходных данных

Одно целое число — количество делителей.

Ограничения

1 ≤ N ≤ 10⁶

Пример входных данных
12
Пример выходных данных
6

Делители числа 12: 1, 2, 3, 4, 6, 12.

Задача 1.11

Простое число

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано натуральное число N. Определите, является ли оно простым.

Формат входных данных

Одно натуральное число N.

Формат выходных данных

«ДА», если N простое, иначе «НЕТ».

Ограничения

1 ≤ N ≤ 10⁶

Пример входных данных
17
Пример выходных данных
ДА
Задача 1.12

НОД двух чисел

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Даны два натуральных числа. Найдите их наибольший общий делитель.

Формат входных данных

Два натуральных числа через пробел.

Формат выходных данных

Одно число — наибольший общий делитель.

Ограничения

1 ≤ значения ≤ 10⁹

Пример входных данных
18 24
Пример выходных данных
6
Задача 1.13

Количество слов в строке

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка, слова в которой разделены одним пробелом. Посчитайте количество слов.

Формат входных данных

Одна строка длиной до 1000 символов.

Формат выходных данных

Одно целое число — количество слов.

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
жили были дед да баба
Пример выходных данных
5
Задача 1.14

Замена пробелов на подчёркивания

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка. Замените в ней все пробелы на символ подчёркивания «_».

Формат входных данных

Одна строка длиной до 1000 символов.

Формат выходных данных

Строка с заменёнными пробелами.

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
добрый день
Пример выходных данных
добрый_день
Задача 1.15

Таблица умножения

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дано число N. Выведите таблицу умножения числа N на числа от 1 до 10.

Формат входных данных

Одно целое число N.

Формат выходных данных

10 строк вида «N x i = результат», i от 1 до 10.

Ограничения

1 ≤ N ≤ 100

Пример входных данных
4
Пример выходных данных
4 x 1 = 4
4 x 2 = 8
4 x 3 = 12
...
4 x 10 = 40
Задача 1.16

Високосный год

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан год N. Определите, является ли он високосным (делится на 4, но не на 100, либо делится на 400).

Формат входных данных

Одно целое число N.

Формат выходных данных

«ДА», если год високосный, иначе «НЕТ».

Ограничения

1 ≤ N ≤ 9999

Пример входных данных
2024
Пример выходных данных
ДА
Задача 1.17

Разворот массива

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан массив из N чисел. Выведите его элементы в обратном порядке.

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел.

Формат выходных данных

N чисел через пробел — массив в обратном порядке.

Ограничения

1 ≤ N ≤ 10⁵

Пример входных данных
5
1 2 3 4 5
Пример выходных данных
5 4 3 2 1
Задача 1.18

Чётные числа в массиве

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан массив из N чисел. Посчитайте, сколько среди них чётных.

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел.

Формат выходных данных

Одно число — количество чётных элементов.

Ограничения

1 ≤ N ≤ 10⁵

Пример входных данных
6
2 5 8 3 10 7
Пример выходных данных
3
Задача 1.19

Цельсий в Фаренгейт

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана температура C в градусах Цельсия. Переведите её в градусы Фаренгейта по формуле F = C × 9/5 + 32.

Формат входных данных

Одно целое число C.

Формат выходных данных

Одно число — значение в Фаренгейтах.

Ограничения

−273 ≤ C ≤ 1000

Пример входных данных
20
Пример выходных данных
68
Задача 1.20

Вхождения символа в строке

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка и символ. Посчитайте, сколько раз символ встречается в строке.

Формат входных данных

Первая строка — текст. Вторая строка — искомый символ.

Формат выходных данных

Одно число — количество вхождений.

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
барабан
а
Пример выходных данных
3

Уровень 2

Сортировки, рекурсия, структуры данных, работа с текстом посложнее

Задача 2.1

Медиана массива

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан массив из N чисел. Найдите его медиану — значение, которое окажется в середине массива после сортировки. Если N чётное, выведите среднее арифметическое двух центральных элементов.

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел.

Формат выходных данных

Одно число — медиана массива.

Ограничения

1 ≤ N ≤ 10⁵

Пример входных данных
5
7 2 9 4 5
Пример выходных данных
5

После сортировки: 2, 4, 5, 7, 9 — центральный элемент 5.

Задача 2.2

N-е число Фибоначчи

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Последовательность Фибоначчи задаётся как F(1) = 1, F(2) = 1, F(i) = F(i−1) + F(i−2). Найдите F(N).

Формат входных данных

Одно целое число N.

Формат выходных данных

Одно число — значение F(N).

Ограничения

1 ≤ N ≤ 80

Пример входных данных
8
Пример выходных данных
21
Задача 2.3

Правильная скобочная последовательность

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дана строка из символов «(», «)», «[», «]», «{», «}». Определите, является ли последовательность скобок правильной (каждой открывающей скобке соответствует закрывающая того же типа в правильном порядке).

Формат входных данных

Одна строка длиной до 1000 символов.

Формат выходных данных

«ДА», если последовательность правильная, иначе «НЕТ».

Ограничения

1 ≤ длина строки ≤ 1000

Пример входных данных
([]{})
Пример выходных данных
ДА
Задача 2.4

Самое частое слово в тексте

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Дан текст, слова в котором разделены одним пробелом. Найдите слово, которое встречается чаще всех. Гарантируется, что такое слово единственное.

Формат входных данных

Одна строка длиной до 10⁴ символов.

Формат выходных данных

Слово, встречающееся чаще всего.

Ограничения

1 ≤ длина строки ≤ 10⁴

Пример входных данных
кот пёс кот попугай кот пёс
Пример выходных данных
кот
Задача 2.5

Быстрое возведение в степень

Ограничение времени: 1 секунда · Ограничение памяти: 256 МБ

Условие

Даны числа a и n. Вычислите aⁿ по модулю 1 000 000 007. Простое возведение в степень циклом за O(n) может не уложиться в ограничение времени при больших n — потребуется алгоритм быстрого возведения в степень.

Формат входных данных

Два целых числа a и n через пробел.

Формат выходных данных

Одно число — aⁿ mod 1 000 000 007.

Ограничения

1 ≤ a ≤ 10⁹; 0 ≤ n ≤ 10¹⁸

Пример входных данных
2 10
Пример выходных данных
1024

Уровень 3

Динамическое программирование, графы, жадные алгоритмы, комбинаторика

Задача 3.1

Наибольшая возрастающая подпоследовательность

Ограничение времени: 2 секунды · Ограничение памяти: 256 МБ

Условие

Дан массив из N чисел. Найдите длину наибольшей строго возрастающей подпоследовательности (элементы не обязательно идут подряд, но сохраняют исходный порядок).

Формат входных данных

Первая строка — число N. Вторая строка — N целых чисел.

Формат выходных данных

Одно число — длина наибольшей возрастающей подпоследовательности.

Ограничения

1 ≤ N ≤ 2500

Пример входных данных
8
5 2 8 6 3 6 9 7
Пример выходных данных
4

Например, подпоследовательность 2, 3, 6, 9 возрастает и имеет длину 4.

Задача 3.2

Кратчайший путь в лабиринте

Ограничение времени: 2 секунды · Ограничение памяти: 256 МБ

Условие

Дан прямоугольный лабиринт из символов «.» (проход), «#» (стена), «S» (старт) и «E» (выход). Найдите минимальное число шагов, чтобы попасть из S в E, перемещаясь на соседнюю клетку вверх, вниз, влево или вправо.

Формат входных данных

Первая строка — числа R и C (число строк и столбцов). Следующие R строк — сам лабиринт.

Формат выходных данных

Одно число — минимальное количество шагов. Гарантируется, что путь существует.

Ограничения

1 ≤ R, C ≤ 500

Пример входных данных
4 4
S.#.
.#..
...#
#..E
Пример выходных данных
6

Один из кратчайших путей: вниз, вниз, вправо, вниз, вправо, вправо — 6 шагов.

Задача 3.3

Максимум непересекающихся отрезков

Ограничение времени: 2 секунды · Ограничение памяти: 256 МБ

Условие

Дано N отрезков на числовой прямой, каждый задан началом и концом. Выберите наибольшее количество отрезков так, чтобы никакие два из них не пересекались (отрезки могут соприкасаться концами — конец одного равен началу другого).

Формат входных данных

Первая строка — число N. Следующие N строк — по два целых числа: начало и конец отрезка.

Формат выходных данных

Одно число — максимальное количество непересекающихся отрезков.

Ограничения

1 ≤ N ≤ 10⁵

Пример входных данных
6
1 3
2 5
4 6
5 7
6 8
7 9
Пример выходных данных
3

Например: отрезки (1,3), (4,6), (6,8) не пересекаются между собой.