Вопрос задан 29.06.2026 в 17:50. Предмет Информатика. Спрашивает Кушнарева Елизавета.

Задача A. Ёлка Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 0,5 секунд Ограничение по памяти: 256 мегабайт Алихан собирается нарядить ёлку к Новому году. Чтобы это сделать, он представил ёлку в виде n уровней. Алихан решил, что с каждым уровнем количество игрушек на этом уровне ёлки будет на два больше, чем на предыдущем. После этого он отправился в магазин за игрушками. Таким образом, он использовал одну игрушку, чтобы нарядить первый уровень, три — второй уровень, пять — третий уровень, и так до уровня n (известно, что на уровне n количество игрушек 2n-1). Сколько игрушек купил Алихан, если он нарядил все n уровней? Формат входных данных: На единственной строке находится число n — количество уровней, на которые Алихан разделил ёлку. Формат выходных данных: На единственной строке выведите количество игрушек, которые были куплены Алиханом. Система оценки: Для 24% тестов — (1 ⩽ n ⩽ 10²), для 42% тестов — (1 ⩽ n ⩽ 10⁵), для 34% тестов — (1 ⩽ n ⩽ 10⁹). Примеры: стандартный ввод 2 -> стандартный вывод 4; стандартный ввод 3 -> стандартный вывод 9. Задача B. Арсен Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 1 секунда Ограничение по памяти: 256 мегабайт Так как Арсен является тренером знаменитого футбольного клуба «Арсенал», он решил позаботиться о будущем клуба и объявил набор в футбольный кружок для юношей. Количество детей, пришедших в кружок, — n оказалось очень большим числом. Тем не менее, Арсен не хочет никого обидеть и хочет распределить всех детей в команды ровно по 11 человек. Получится ли у него? Формат входных данных: В первой строке дано целое число n (1 ⩽ n ⩽ 10¹⁰⁰⁰) — количество детей, пришедших в кружок. Формат выходных данных: В первой строке выведите слово «YES» (без кавычек), если возможно всех распределить по командам, иначе — «NO» (без кавычек). Система оценки: Для 38% тестов — (1 ⩽ n ⩽ 10⁹), для 62% тестов — (1 ⩽ n ⩽ 10¹⁰⁰⁰). Примеры: стандартный ввод 121 -> стандартный вывод YES; стандартный ввод 1000 -> стандартный вывод NO. Задача C. Работа Имя входного файла: стандартный ввод Имя выходного файла: стандартный вывод Ограничение по времени: 1 секунда Ограничение по памяти: 256 мегабайт Жарасхан работает в крупной корпорации «ӘСЕМ». У Жарасхана есть n документов, выложенных в ряд. В каждом документе содержится секретное число aᵢ. Также у Жарасхана есть некоторые поручения от начальника. Есть 3 типа поручений: - В поручениях первого типа начальник просит сообщить секретное число в самом левом документе, а затем уничтожить этот документ. - В поручениях второго типа начальник просит сообщить секретное число в самом правом документе, а затем уничтожить этот документ. - В поручениях третьего типа начальник просит сообщить секретное число в документе, который лежит в середине всех документов, а затем уничтожить этот документ. Если у списка документов нет серединного документа, выбрать документ, который лежит слева от середины. Но Жарасхан заранее знает, что начальство даст все поручения в повторяющемся порядке. А именно: начальник даст поручение первого типа, затем второго, затем третьего, и ещё раз первого, второго, третьего и так далее, пока список документов не окажется пуст. Жарасхан очень занят другими поручениями. Он просит вас помочь, иначе он лишится работы. Формат входных данных: В первой строке входных данных содержится единственное целое положительное число n (1 ⩽ n ⩽ 10⁵) — количество документов в списке. Вторая строка содержит n целых чисел aᵢ (1 ⩽ aᵢ ⩽ 10⁹) — секретные числа в документах. Формат выходных данных: Выведите n чисел — секретные числа, которые должен Жарасхан сообщить начальнику после каждой операции. Система оценки: 56% тестов имеют ограничения 1 ⩽ n ⩽ 1000, 44% тестов имеют ограничения 1 ⩽ n ⩽ 10⁵. В данной задаче ровно 50 тестов. За каждый пройденный тест участник получает 2 балла. Пример: стандартный ввод 6 4 5 9 8 6 7 -> стандартный вывод 4 7 9 5 6 8.

Перейти к ответам

Ответы на вопрос

Отвечает Alaev Nurali.

Задача A. Ёлка

Количество игрушек по уровням: \(1, 3, 5, \ldots, 2n-1\). Это первые \(n\) нечётных чисел. Их сумма равна:

\[ 1+3+5+\ldots+(2n-1)=n^2 \]

Значит, нужно вывести \(n^2\).

Пример решения на C++:


#include <iostream>
using namespace std;

int main() {
long long n;
cin >> n;
cout << n * n;
return 0;
}

Задача B. Арсен

Число \(n\) может быть очень большим, до \(10^{1000}\), поэтому его нужно читать как строку. Нужно проверить, делится ли число на \(11\).

Признак делимости на \(11\): разность между суммой цифр на нечётных и чётных позициях должна делиться на \(11\).

Пример решения на C++:


#include <iostream>
#include <string>
using namespace std;

int main() {
string n;
cin >> n;
int s1 = 0, s2 = 0;

for (int i = 0; i < n.size(); i++) {
if (i % 2 == 0) s1 += n[i] - '0';
else s2 += n[i] - '0';
}

if ((s1 - s2) % 11 == 0) cout << "YES";
else cout << "NO";

return 0;
}

Задача C. Работа

Нужно быстро удалять элементы слева, справа и из середины. Для этого удобно хранить документы в структуре, где удаление по итератору работает быстро, например в list. Указатель на середину нужно аккуратно двигать после каждого удаления.

Но для школьного уровня проще объяснить идею: при \(n\le 10^5\) можно использовать две очереди или список с итератором на середину, чтобы каждая операция выполнялась за \(O(1)\), а всё решение — за \(O(n)\).

Порядок операций повторяется так:

  • 1-я операция: взять левый документ;
  • 2-я операция: взять правый документ;
  • 3-я операция: взять средний документ, если середины нет — левый от середины;
  • затем снова 1-я, 2-я, 3-я.

Для примера \(4, 5, 9, 8, 6, 7\): сначала берём \(4\), потом \(7\), потом средний слева \(9\), затем \(5\), \(6\), \(8\). Ответ: \(4\ 7\ 9\ 5\ 6\ 8\).

Похожие вопросы

Топ вопросов за вчера в категории Информатика

Последние заданные вопросы в категории Информатика

Задать вопрос