Информатика

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

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

Если наибольшая частота одинакова у нескольких чисел, выберите наименьшее из этих чисел.

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

В первой строке дано целое число N — количество элементов последовательности (1 ≤ N ≤ 100 000).

Во второй строке записаны N целых чисел через пробел. Каждое число находится в диапазоне от −109 до 109 включительно.

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

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

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

Выведите каждое различное число вместе с количеством его появлений. Числа в ответе должны идти по возрастанию.

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

В первой строке дано целое число N — количество элементов последовательности (1 ≤ N ≤ 100 000).

Во второй строке записаны N целых чисел через пробел. Каждое число находится в диапазоне от −109 до 109 включительно.

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

Для каждого различного числа выведите отдельную строку: само число и через пробел количество его появлений. Строки расположите по возрастанию чисел.

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

Для каждого датчика сохраните только последнее поступившее показание. Выведите результаты по возрастанию номеров датчиков.

Скопируйте подготовленный код и допишите сохранение показания. Последний цикл уже выводит готовый результат в нужном порядке; сортировка используется только для вывода.

n = int(input())
last = {}
for _ in range(n):
    sensor, temperature = map(int, input().split())
    # Сохраните последнее показание этого датчика

for sensor, temperature in sorted(last.items()):
    print(sensor, temperature)
Входные данные

Первая строка содержит число записей N (1 ≤ N ≤ 100 000). В следующих N строках записаны два целых числа через пробел: номер датчика от 1 до 109 и температура от −100 до 100 включительно.

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

Для каждого встретившегося датчика выведите в отдельной строке его номер и последнее показание через пробел. Строки должны идти по возрастанию числовых номеров датчиков.

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

Для каждого запроса выведите цену известного товара или слово НЕТ, если указанного кода нет. Цена 0 допустима и означает, что товар бесплатный.

Скопируйте подготовленный код и допишите обработку запроса внутри последнего цикла.

n = int(input())
prices = {}
for _ in range(n):
    product, price = input().split()
    prices[product] = int(price)

m = int(input())
for _ in range(m):
    product = input()
    # Выведите цену известного товара или слово НЕТ
Входные данные

Первая строка содержит целое число N — количество товаров (1 ≤ N ≤ 10 000). Следующие N строк содержат код товара и целую цену через пробел. Коды различны.

Код — строка длиной от 1 до 20 символов, состоящая из латинских букв и цифр. Регистр букв имеет значение; ведущие нули являются частью кода. Цена находится в диапазоне от 0 до 109 рублей включительно.

Затем вводится целое число M — количество запросов (1 ≤ M ≤ 10 000). В каждой из следующих M строк находится один код товара.

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

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

Для каждого запроса выведите в отдельной строке цену либо слово НЕТ прописными русскими буквами. Ответы должны идти в порядке запросов.

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

Скопируйте подготовленную программу и допишите строку, добавляющую прочитанные данные в словарь. Все запрашиваемые товары присутствуют в справочнике.

n = int(input())
prices = {}
for _ in range(n):
    product, price = input().split()
    price = int(price)
    # Добавьте товар и его цену в словарь

m = int(input())
for _ in range(m):
    product = input()
    print(prices[product])
Входные данные

Первая строка содержит целое число N — количество товаров (1 ≤ N ≤ 10 000). Следующие N строк содержат код товара и целую цену через пробел. Коды различны.

Код — строка длиной от 1 до 20 символов, состоящая из латинских букв и цифр. Регистр букв имеет значение; ведущие нули являются частью кода. Цена находится в диапазоне от 0 до 109 рублей включительно.

Затем вводится целое число M — количество запросов (1 ≤ M ≤ 10 000). В каждой из следующих M строк находится один код товара.

Гарантируется, что каждый запрашиваемый код присутствует среди первых N записей.

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

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

В магазине каждому коду товара соответствует цена в рублях. Все коды и цены уже записаны в словаре подготовленной программы.

Программа получает код одного товара. Допишите вывод цены этого товара. Скопируйте подготовленный код и замените комментарий своей строкой.

prices = {
    'pen': 35,
    'pencil': 20,
    'notebook': 70,
    'ruler': 45,
    'eraser': 20,
    'marker': 90,
    'folder': 120,
    'paper': 350
}

product = input()
# Допишите вывод цены товара
Входные данные

Одна строка содержит один из кодов, перечисленных в словаре. Код записан строчными латинскими буквами. Гарантируется, что он присутствует в словаре.

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

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

Мозаика

Мозаика состоит из N строк и M столбцов. Изначально все плитки были погашены. Обычная команда переключает все плитки одной выбранной строки или одного выбранного столбца; строки и столбцы можно выбирать повторно.

После всех обычных команд один лишний импульс мог переключить одну отдельную плитку. Лишнего импульса могло и не быть.

По окончательному состоянию определите координаты плитки, получившей лишний импульс, либо установите, что импульса не было.

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

В первой строке N и M (3 <= N, M <= 1000). Далее N строк по M символов без пробелов: 0 — плитка погашена, 1 — светится. Строки и столбцы нумеруются с 1.

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

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

Выведите номер строки и столбца лишнего импульса. Если его не было, выведите 0 0.

Печати

На двери заброшенного архива Лера обнаружила ряд светящихся печатей. На каждой было записано положительное целое число. Рядом сохранилась надпись: «Истинная запись останется, когда исчезнут тройные печати».

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

Все три выбранные печати исчезают одновременно. Оставшиеся печати сдвигаются, сохраняя взаимный порядок, и становятся соседними. Затем поиск повторяется с начала оставшегося ряда. Процесс заканчивается, когда подходящих троек нет или осталось меньше трёх печатей.

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

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

В первой строке задано целое число N — исходное количество печатей (1 <= N <= 100000).

Во второй строке через пробел записаны N целых чисел от 1 до 10^9 включительно.

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

В первой строке выведите M — количество оставшихся печатей. Если M > 0, во второй строке выведите оставшиеся числа слева направо. Если все печати исчезли, выведите только 0.

Фотография представляет собой растровое изображение размером {1}×{2} пикселей. Для кодирования цвета каждого пикселя используется палитра из {3} цветов. Сжатие данных не производится.

Сколько Кбайт занимает фотография?

В ответе укажите целую часть полученного числа.

Растровое изображение размером {1}×{2} пикселей сохраняется без использования сжатия. Для кодирования цвета каждого пикселя используется палитра из {3} цветов.

Определите информационный объём изображения в Кбайт.

В ответе запишите только целое число.

Растровое изображение имеет размер {1}×{2} пикселей. Для его хранения отведено не более {3} Кбайт памяти. Сжатие не используется.

Определите максимально возможное количество цветов в палитре изображения.

Для хранения растрового изображения размером {1}×{2} пикселей отведено не более {3} Кбайт памяти. Сжатие данных не используется.

Какое максимальное количество цветов может содержать палитра изображения, если для кодирования каждого пикселя используется одинаковое целое число бит?

Цифровая камера создаёт фотографии размером {1}×{2} пикселей. Для кодирования цвета каждого пикселя используется {3} бит.

Фотографии объединяются в пакет и передаются по каналу связи со скоростью {4} бит/с. На передачу одного пакета отводится не более {5} секунд.

Какое максимальное количество фотографий может находиться в одном пакете?

Фотографии размером {1}×{2} пикселей сохраняются без сжатия с глубиной цвета {3} бит.

Для хранения фотографий выделено {4} Гбайт памяти.

Какое максимальное количество полных фотографий можно сохранить в этой памяти?

Растровое изображение размером {1}×{2} пикселей имеет глубину цвета {3} бит. Сжатие не используется.

Файл передаётся по каналу связи со скоростью {4} бит/с.

Определите наименьшее целое число секунд, необходимое для передачи файла.

Каждая исходная фотография представляет собой растровое изображение размером {1}×{2} пикселей и использует палитру из 2{3} цветов.

Перед отправкой фотографию преобразуют в изображение размером {4}×{5} пикселей с глубиной цвета {6} бит.

Сколько Кбайт трафика экономится при передаче {7} фотографий?

В ответе укажите целую часть полученного числа.

Фотокамера создаёт изображения размером {1}×{2} пикселей с глубиной цвета {3} бит.

Перед передачей каждое изображение преобразуют к размеру {4}×{5} пикселей и глубине цвета {6} бит.

Сколько Кбайт трафика будет сэкономлено при передаче {7} фотографий?

В ответе укажите целую часть полученного числа.

Музыкальный фрагмент длительностью {1} секунд оцифрован в формате стерео с частотой дискретизации {2} кГц и глубиной кодирования {3} бит.

Сжатие данных не производилось.

Определите размер полученного файла в Кбайт.

Исходная звукозапись была сделана в формате моно с частотой дискретизации {1} кГц и глубиной кодирования {2} бит. Размер файла составлял {3} Мбайт.

Ту же запись повторно оцифровали без изменения длительности в формате стерео с частотой дискретизации {4} кГц и глубиной кодирования {5} бит.

Сжатие данных не используется.

Определите размер нового файла в Мбайт.

Поделиться
Класснуть