Экзамены и диагностики

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

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

Определите клиента, который передал наибольший суммарный объём данных за все свои запросы. Если таких клиентов несколько, выберите клиента с наименьшим идентификатором.

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

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

В каждой из следующих N строк записаны два целых числа: идентификатор клиента и объём данных одного запроса. Оба числа находятся в диапазоне от 1 до 109 включительно. Записи могут идти в любом порядке.

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

Выведите через пробел идентификатор выбранного клиента и суммарный объём переданных им данных в килобайтах.

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

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

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

В первой строке дано целое число 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()
# Допишите вывод цены товара
Входные данные

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

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

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

Исполнитель МТ представляет собой читающую и записывающую головку, которая может передвигаться вдоль бесконечной горизонтальной ленты, разделённой на равные ячейки. В каждой ячейке ленты находится ровно один символ из алфавита исполнителя, включая специальный пустой символ «λ», обозначающий пустую ячейку.

Программа работы исполнителя задаётся таблицей. В первой строке таблицы перечислены все возможные символы, которые могут находиться в текущей ячейке ленты, в первом столбце — все возможные состояния головки. На пересечении i-й строки и j-го столбца таблицы находится команда, которую должна выполнить машина Тьюринга, если головка находится в состоянии, соответствующем i-й строке, и обозревает символ, соответствующий j-му столбцу. Если для некоторой пары «символ — состояние» команда в таблице отсутствует, это означает, что такая пара при работе исполнителя не встречается.

Каждая команда состоит из трёх элементов, записанных через запятую. Первый элемент — символ алфавита, который следует записать в текущую ячейку (он может совпадать с тем, который уже там записан). Второй элемент — один из символов «L», «R», «N», «S»: символы «L» и «R» означают сдвиг головки на одну ячейку влево или вправо соответственно, символ «N» означает отсутствие сдвига, а символ «S» означает, что после выполнения текущей команды работа исполнителя завершается. Сдвиг головки происходит после записи символа в текущую ячейку. Третий элемент — новое состояние, в которое переходит головка после выполнения команды.

Например, команда 0, L, q3 означает следующее: в текущую ячейку записывается символ «0», затем головка сдвигается на одну ячейку влево и переходит в состояние q3.

Выполните задание. На ленте записана последовательность из нулей и единиц; её длина равна {1}. Ячейки вне последовательности заполнены символом «λ». В начальном состоянии q0 головка обозревает ближайшую пустую ячейку справа от последовательности.

Программа работы исполнителя:

{2}

Известно, что после выполнения программы количество нулей на ленте оказалось равно {3}. Определите {4} в исходной последовательности. Ответ запишите целым числом.

Исполнитель МТ представляет собой читающую и записывающую головку, которая может передвигаться вдоль бесконечной горизонтальной ленты, разделённой на равные ячейки. В каждой ячейке ленты находится ровно один символ из алфавита исполнителя, включая специальный пустой символ «λ», обозначающий пустую ячейку.

Программа работы исполнителя задаётся таблицей. В первой строке таблицы перечислены все возможные символы, которые могут находиться в текущей ячейке ленты, в первом столбце — все возможные состояния головки. На пересечении i-й строки и j-го столбца таблицы находится команда, которую должна выполнить машина Тьюринга, если головка находится в состоянии, соответствующем i-й строке, и обозревает символ, соответствующий j-му столбцу. Если для некоторой пары «символ — состояние» команда в таблице отсутствует, это означает, что такая пара при работе исполнителя не встречается.

Каждая команда состоит из трёх элементов, записанных через запятую. Первый элемент — символ алфавита, который следует записать в текущую ячейку (он может совпадать с тем, который уже там записан). Второй элемент — один из символов «L», «R», «N», «S»: символы «L» и «R» означают сдвиг головки на одну ячейку влево или вправо соответственно, символ «N» означает отсутствие сдвига, а символ «S» означает, что после выполнения текущей команды работа исполнителя завершается. Сдвиг головки происходит после записи символа в текущую ячейку. Третий элемент — новое состояние, в которое переходит головка после выполнения команды.

Например, команда 0, L, q3 означает следующее: в текущую ячейку записывается символ «0», затем головка сдвигается на одну ячейку влево и переходит в состояние q3.

Выполните задание. На ленте исполнителя МТ в соседних ячейках записано двоичное представление целого положительного числа без ведущих нулей. Ячейки справа и слева от последовательности заполнены пустыми символами «λ». В начальном состоянии q0 головка обозревает ближайшую пустую ячейку: слева от записи, если первая команда сдвигает головку вправо (R), и справа от записи, если влево (L).

Программа работы исполнителя:

{2}

После выполнения программы на ленте оказалась двоичная запись числа {3}. Определите десятичное значение наибольшего числа, меньшего, чем {1}, которое могло быть записано на ленте до начала работы программы. Ответ запишите в десятичной системе счисления.

Исполнитель МТ представляет собой читающую и записывающую головку, которая может передвигаться вдоль бесконечной горизонтальной ленты, разделённой на равные ячейки. В каждой ячейке ленты находится ровно один символ из алфавита исполнителя, включая специальный пустой символ «λ», обозначающий пустую ячейку.

Программа работы исполнителя задаётся таблицей. В первой строке таблицы перечислены все возможные символы, которые могут находиться в текущей ячейке ленты, в первом столбце — все возможные состояния головки. На пересечении i-й строки и j-го столбца таблицы находится команда, которую должна выполнить машина Тьюринга, если головка находится в состоянии, соответствующем i-й строке, и обозревает символ, соответствующий j-му столбцу. Если для некоторой пары «символ — состояние» команда в таблице отсутствует, это означает, что такая пара при работе исполнителя не встречается.

Каждая команда состоит из трёх элементов, записанных через запятую. Первый элемент — символ алфавита, который следует записать в текущую ячейку (он может совпадать с тем, который уже там записан). Второй элемент — один из символов «L», «R», «N», «S»: символы «L» и «R» означают сдвиг головки на одну ячейку влево или вправо соответственно, символ «N» означает отсутствие сдвига, а символ «S» означает, что после выполнения текущей команды работа исполнителя завершается. Сдвиг головки происходит после записи символа в текущую ячейку. Третий элемент — новое состояние, в которое переходит головка после выполнения команды.

Например, команда 0, L, q3 означает следующее: в текущую ячейку записывается символ «0», затем головка сдвигается на одну ячейку влево и переходит в состояние q3.

Выполните задание. На ленте записана двоичная запись натурального числа {1} без ведущих нулей. В начальном состоянии q0 головка обозревает ближайшую пустую ячейку «λ»: слева от записи, если первая команда сдвигает головку вправо (R), и справа от записи, если влево (L). Ячейки вне записи заполнены символом «λ».

Программа работы исполнителя:

{2}

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

Исполнитель МТ представляет собой читающую и записывающую головку, которая может передвигаться вдоль бесконечной горизонтальной ленты, разделённой на равные ячейки. В каждой ячейке ленты находится ровно один символ из алфавита исполнителя, включая специальный пустой символ «λ», обозначающий пустую ячейку.

Программа работы исполнителя задаётся таблицей. В первой строке таблицы перечислены все возможные символы, которые могут находиться в текущей ячейке ленты, в первом столбце — все возможные состояния головки. На пересечении i-й строки и j-го столбца таблицы находится команда, которую должна выполнить машина Тьюринга, если головка находится в состоянии, соответствующем i-й строке, и обозревает символ, соответствующий j-му столбцу. Если для некоторой пары «символ — состояние» команда в таблице отсутствует, это означает, что такая пара при работе исполнителя не встречается.

Каждая команда состоит из трёх элементов, записанных через запятую. Первый элемент — символ алфавита, который следует записать в текущую ячейку (он может совпадать с тем, который уже там записан). Второй элемент — один из символов «L», «R», «N», «S»: символы «L» и «R» означают сдвиг головки на одну ячейку влево или вправо соответственно, символ «N» означает отсутствие сдвига, а символ «S» означает, что после выполнения текущей команды работа исполнителя завершается. Сдвиг головки происходит после записи символа в текущую ячейку. Третий элемент — новое состояние, в которое переходит головка после выполнения команды.

Например, команда 0, L, q3 означает следующее: в текущую ячейку записывается символ «0», затем головка сдвигается на одну ячейку влево и переходит в состояние q3.

Выполните задание. На ленте записана двоичная запись натурального числа {1} без ведущих нулей. В начальном состоянии q0 головка обозревает ближайшую пустую ячейку «λ»: слева от записи, если первая команда сдвигает головку вправо (R), и справа от записи, если влево (L). Ячейки вне записи заполнены символом «λ».

Программа работы исполнителя:

{2}

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

В новом датацентре «Кибер-Облако» серверы размещаются в стойках, которые расположены рядами. Ряды пронумерованы натуральными числами. Слоты в каждом ряду также пронумерованы натуральными числами начиная с единицы.

По данным инвентаризации известно, в каких рядах и в каких слотах уже установлены серверы. Администратору нужно разместить новое оборудование: кластер из ровно 25 серверов, которые должны располагаться в соседних слотах одного ряда.

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

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

Гарантируется, что существует хотя бы один ряд, удовлетворяющий условию.

Формат входных данных
В первой строке находится число N — количество установленных серверов (натуральное число, не превышающее 20000).

Каждая из следующих N строк содержит два натуральных числа, не превышающих 10000:
- номер ряда
- номер слота в этом ряду

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

Два целых числа через пробел: наибольший номер ряда и наименьший номер слота в выбранной последовательности из 25 свободных мест.
 
Миша заполнял таблицу истинности логической функции F.
F = {1},

но успел заполнить лишь фрагмент из трёх различных её строк, даже не указав, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.
 {2}

Определите, какому столбцу таблицы соответствует каждая из переменных w, x, y, z.

В ответе напишите буквы w, x, y, z в том порядке, в котором идут соответствующие им столбцы (сначала буква, соответствующая первому столбцу; затем буква, соответствующая второму столбцу, и т.д.). Буквы в ответе пишите подряд, никаких разделителей между буквами ставить не нужно.
На рисунке схема дорог N-ского района изображена в виде графа, в таблице содержатся сведения о протяжённости каждой из этих дорог (в километрах).
{1}

Так как таблицу и схему рисовали независимо друг от друга, то нумерация населённых пунктов в таблице никак не связана с буквенными обозначениями на графе. Определите, какова сумма протяжённостей дорог из пункта {2} в пункт {3} и из пункта {4} в пункт {5}. В ответе запишите целое число.
АП-1#67854
Что в общем случае означает символ ©?
  1. Что продукт является бесплатным (freeware)
  2. Что произведение защищено авторским правом (copyright)
  3. Что продукт имеет открытый исходный код (open-source)
  4. Что произведение было отклонено к публикации
ИД-2#67853
Что такое "фейк-ньюс" (fake news)?
  1. Любая новость, которая не понравилась властям
  2. Псевдоновостная публикация, содержащая заведомо ложную информацию, созданная для введения в заблуждение с целью получения выгоды
  3. Новость, в которой есть небольшие фактологические ошибки
  4. Сатирические новости из известных юмористических изданий
Поделиться
Класснуть