Информатика

2 621 задачавместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.

Условие. Дан массив из \(n\) вещественных чисел. Вычислите и выведите пять статистических характеристик.

Формат ввода. Первая строка содержит целое число \(n\) (\(1 \le n \le 10^5\)). Вторая строка содержит \(n\) вещественных чисел, разделённых пробелами.

Формат вывода. Пять строк, каждая в виде <метка>: <значение>, значение округлено до 4 знаков после запятой:\(\bar{a} = \frac{1}{n}\sum_{i=1}^{n} a_i, \qquad \sigma(a) = \sqrt{\frac{1}{n}\sum_{i=1}^{n}(a_i - \bar{a})^2}\)  

Пример ввода:

5
3.0 1.0 4.0 1.0 5.0

Пример вывода:

min: 1.0000
max: 5.0000
mean: 2.8000
median: 3.0000
std: 1.6000
✓ 19✗ 18600лёгкаяВойти и решать
🔍
Шаг 5: Частотный анализ
Средне
Мы засекли серию повторяющихся сигналов от вируса. Чтобы понять его логику, нужно определить, какой сигнал встречается чаще всего. Это ключевая частота!
Условие задачи
 

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

Гарантируется, что такое число единственно.

Входные данные

Одна строка: набор целых чисел через пробел (от 1 до 100 чисел, значения от 0 до 1000).

Выходные данные

Две строки: число-лидер и его частота.

Подсказка: Собери частоты в словарь через d[x] = d.get(x, 0) + 1.
✓ 15✗ 14400лёгкаяВойти и решать
🛡️
Шаг 2: Фильтр аномалий
Просто
Вирус внедрил в систему аномальные значения. Нормальный сигнал — это число в допустимом диапазоне. Всё, что за границами — мусор от вируса. Отфильтруй чистые данные!
Условие задачи
 

В первой строке — два целых числа L и R — допустимый диапазон (включительно). Во второй строке — набор целых чисел через пробел.

Выведи через пробел только те числа, которые попадают в диапазон от L до R, в том же порядке.

Если подходящих чисел нет, выведи слово ПУСТО.

Входные данные

Первая строка: два целых числа L и R (L ≤ R). Вторая строка: набор целых чисел через пробел.

Выходные данные

Отфильтрованные числа через пробел, или слово ПУСТО.

📡
Шаг 1: Перехваченные данные
Просто
Кибер-агент, ты на связи! Вирус «Пиксель» атаковал серверы игровой вселенной «НеоСфера». Мы перехватили фрагмент данных — список числовых кодов. Проведи базовый анализ, чтобы понять масштаб утечки.
Условие задачи
 

Дана строка из N целых чисел через пробел. Выведи пять чисел, каждое на отдельной строке:

  • количество чисел в списке;
  • сумму всех чисел;
  • минимальное число;
  • максимальное число;
  • первое число минус последнее число.
Входные данные

Одна строка: N целых чисел через пробел (1 ≤ N ≤ 100, числа от −1000 до 1000).

Выходные данные

Пять чисел, каждое на отдельной строке.

Подсказка: Считай список: a = list(map(int, input().split())). Дальше — len(), sum(), min(), max(), a[0] - a[-1].

Управляющий отелем давно мечтал приобрести новую мебель на свою дачу...

В Отель привезли \(N\) новых стульев. Их нужно расставить во все комнаты гостиницы. Вместимость каждой комнаты \(a_i\) гостей, то есть, изначально предполагалось, что в этой комнате будет ровно \(a_i\). Администратор хочет сэкономить на расстановке стульев в комнатах и забрать <<лишние>> стулья на дачу.

Но есть условия, которые необходимо соблюдать при расстановке:

  • в каждой комнате должен быть хотя бы один стул;

  • во всех комнатах может не хватать только одинакового количества стульев.

Какое максимально возможное количество стульев может сэкономить администратор в данных условиях?

Формат входных данных
В первой строке вводится два числа \(N\) (\(1\le N\le 10^9\)) — количество привезенных стульев и \(K\) (\(1\le K\le 100\,000\)) — количество комнат в Отеле.

Далее в одной строке через пробел записаны \(K\) натуральных чисел, не превосходящих \(1000\) — вместимости комнат.

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

Формат выходных данных
Нужно вывести единственное число — количество стульев, которые останутся после максимально экономной расстановки стульев по комнатам.

 

В примере из условия если в первую комнату поставить 1, во вторую — 2, в третью — 3, в четвёртую — 4, а в пятую — 5 стульев, то в каждой из комнат будет не хватать ровно одного стула, а администратор сможет сэкономить ровно пять стульев.

Лифт#90843
В вашем отеле необычный лифт — вместо привычных кнопок для каждого этажа, в нём есть только две:  + 3 и  - 2, перемещающие лифт на три этажа вверх и на два этажа вниз соответственно.

Вы хотите попасть с этажа номер 0 (там находится лобби отеля) на этаж номер D (там находится ваш номер), но не хотите постоянно нажимать на кнопки. За какое минимальное число нажатий вы сможете добраться до D-го этажа?

Входные данные

В единственной строке дано одно целое число D ( - 1000 ≤ D ≤ 1000) — номер этажа, на который вы хотите попасть. Обратите внимание, что в отеле есть подземные этажи с отрицательными номерами.

Выходные данные

Выведите одно число — минимальное число нажатий для перемещения с нулевого этажа на этаж с номером D.

Примечание

В первом примере из условия, чтобы попасть с нулевого этажа на первый, нужно один раз подняться на 3 этажа и 1 раз спуститься на 2 этажа, в итоге получится 2 нажатия кнопок.

Во втором примере из условия, чтобы спуститься на 5 этажей вниз, нужно один раз подняться на 3 этажа и 4 раза спуститься вниз на 2 этажа, таким образом, получится 5 нажатий кнопок.

На выборах мэра баллотируются три кандидата (номера 1, 2, 3). Побеждает кандидат, набравший строго больше голосов, чем каждый из остальных. Если два или три кандидата набрали одинаковое максимальное число голосов, выведите REPEAT (необходим второй тур).
 

Входные данные

Первая строка — целое число N (1 <= N <= 10000) - количество проголосовавших.
Каждая из следующих N строк содержит одно число (1, 2 или 3) - результат голосания каждого избирателя.
 

Выходные данные

Номер победителя или REPEAT.
В городе проводится референдум. Известно общее число зарегистрированных избирателей. Для каждого избирателя известно, пришёл ли он на участок: 1 — пришёл, 0 — не пришёл.
Определите явку в процентах (округлить вниз до целого числа) и выведите, состоялся ли референдум (явка строго больше 50%).
 

Входные данные

Первая строка — целое число N (1 <= N <= 10000) — число зарегистрированных избирателей.
Каждая из следующих N строк содержит одно число (0 или 1).
 

Выходные данные

Первая строка — явка в процентах (целое число, округлённое вниз).
Вторая строка — YES, если референдум состоялся, NO иначе.
В школе проходят выборы президента ученического совета. Баллотируются три кандидата (номера 1, 2, 3). Каждый ученик голосует за одного из них.
Определите, сколько голосов набрал каждый кандидат.
 

Входные данные

Первая строка — целое число N (1 <= N <= 1000) — количество проголосовавших.
Каждая из следующих N строк содержит одно целое число (1, 2 или 3) — голос ученика.
 

Выходные данные

Три числа через пробел — количество голосов за кандидата 1, 2 и 3 соответственно.
Поделиться
Класснуть