Информатика

7 592 задачивместе с подтемами
Число у задачи — рейтинг сложности, слово рядом — насколько она трудна по сравнению с другими задачами такого же типа. Шкалы задач с ответом и задач с кодом между собой не сравниваются. Рядом — счётчики попыток: успешные, неуспешные.
Даны три целых числа \(a\), \(b\) и \(c\)
Напишите программу, которая находит количество всех целых чисел от \(a \) до \(b\), которые при целочисленном делении на \(c\) дадут остаток, больший 4

Входные данные: 
В первой строке вводятся три целых числа \(a\), \(b\) и \(c\) (\(a <= b\),  a,b не больше 100 по модулю, 0<=с<=9)

Выходные данные:
Программа должна вывести одно число -  количество всех целых чисел от a до b, которые при целочисленном делении на с дадут остаток, больший 4

Примеры
Входные данные Выходные данные
1 1 10 9 4
АиП-6#67919
Фотограф выкладывает свои фотографии в интернет и предлагает подписчикам создавать мемы, накладывая на фотографии забавные подписи.
Какой подход позволит фанатам на законных основаниях создавать мемы с фотографиями?
  1. Фотограф должен написать: «Эта работа распространяется на условиях лицензии Creative Commons Attribution без производных работ» (CC BY-ND).
  2.  Фотограф должен написать: «Эта работа распространяется на условиях лицензии Creative Commons Attribution».
  3. Фотограф должен подписывать каждую свою фотографию так: «Авторские права © 2019 Имя».
  4. Фотограф должен разместить на странице галереи ссылку на лицензию с открытым исходным кодом (например, лицензию MIT).
АП-1#67854
Что в общем случае означает символ ©?
  1. Что продукт является бесплатным (freeware)
  2. Что произведение защищено авторским правом (copyright)
  3. Что продукт имеет открытый исходный код (open-source)
  4. Что произведение было отклонено к публикации
ИД-2#67853
Что такое "фейк-ньюс" (fake news)?
  1. Любая новость, которая не понравилась властям
  2. Псевдоновостная публикация, содержащая заведомо ложную информацию, созданная для введения в заблуждение с целью получения выгоды
  3. Новость, в которой есть небольшие фактологические ошибки
  4. Сатирические новости из известных юмористических изданий
ТиО-3#67850
Что такое "цифровой разрыв" (digital divide)?
  1. Разрыв в показателях производительности между разными процессорами
  2. Социально-экономическое неравенство между группами людей в возможности доступа к информационным технологиям и интернету
  3. Разрыв в цепочке поставок электронных компонентов
  4. Проблема совместимости между старыми и новыми цифровыми форматами
ТиО-2#67849
Что является основным драйвером формирования "информационного общества"?
  1. Развитие тяжелой промышленности
  2. Широкое распространение и использование информационно-коммуникационных технологий (ИКТ)
  3. Глобализация сельского хозяйства
  4. Рост мегаполисов
ТиО-1#67848
Какой исторический период напрямую связан с изобретением печатного станка Иоганном Гутенбергом и демократизацией знаний?
  1. Промышленная революция
  2. Цифровая революция
  3. Эпоха Возрождения
  4. Эпоха Просвещения
bool-03#67795

Пингвин-программист Пайтончик радуется, когда задача решена правильно И он получил либо 5 звезд, либо похвалу от учителя.

Какое условие проверит, что Пайтончик радуется?

1. task_solved and (stars == 5 or teacher_praise)
2. task_solved and stars == 5 or teacher_praise
3. task_solved or stars == 5 and teacher_praise

В григорианском календаре года нумерются числами 1, 2, 3 и т.д., это года “нашей эры”. Предшествующие года называются “первый год до нашей эры”, “второй год до нашей эры” и т.д.

Будем обозначать года нашей эры положительными числами, а года до нашей эры — отрицательными. При этом года с номером 0 не существует, то есть нумерация лет выглядит так: ..., −3, −2, −1, 1, 2, 3, ...

В летописях написано, что какое-то событие произошло в году номер A, а другое событие произошло спустя n лет после первого события (или за n лет до первого события). Определите, в каком году произошло второе событие.

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

Первая строка входных данных содержит число A — год, в котором произошло первое событие. Вторая строка содержит число n. Если n > 0, то второе событие произошло через n лет после первого события, а если n < 0, то второе событие произошло за |n| лет до первого события. Оба числа могут быть как положительными, так и отрицательными.

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

Программа должна вывести одно целое число — номер года, в который произошло второе событие.

Пояснения к примерам
Пояснение к первому примеру.
Первое событие произошло в 5 году, второе событие произошло за 3 года до первого, это был 2 год.
Пояснение ко второму примеру.
Первое событие произошло в 3 году до н.э., второе событие произошло через 1 год, это 2 год до н.э. Ответ: 2.
Пояснение к третьему примеру.
Первое событие произошло в 3 году до н.э., второе событие произошло через 4 года. Отсчитываем 4 года: 2 год до н.э., 1 год до н.э., 1 год н.э., 2 год н.э. Ответ: 2.

re.fullmatch(pattern, string) - проверяет совпадение ВСЕЙ строки с шаблоном.

Возвращает: объект Match или None

Использование: match = re.fullmatch(r'\d+', text)
 


 Проверить, что строка является корректным ID товара:

  • Формат: [Категория][Номер][Версия]
  • Категория: 1 буква (A-Z)
  • Номер: 1-3 цифры
  • Версия: необязательная, начинается с '-v' и 1-2 цифры
Программа на вход получает строку и должна вывести True, если ID товара корректен и False в противном случае.

re.match(pattern, string) - проверяет совпадение ТОЛЬКО в начале строки.

  • Возвращает: объект Match или None
  • Использование: match = re.match(r'\d+', text)

 

Задача: Проверить, что строка начинается с корректного формата лог-записи:

  • Дата: ГГГГ-ММ-ДД
  • Время: ЧЧ:ММ:СС
  • Уровень логирования: INFO, WARN, ERROR, DEBUG
В этой задаче на вход подается одна строка. Вам нужно вывести True если начало строки совпадает с шаблоном и False в противном случае.
 

re.search(pattern, string) - находит ПЕРВОЕ совпадение с шаблоном в строке.

  • Возвращает: объект Match или None
  • Использование: match = re.search(r'\d+', text)

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

Например (только для понимания формата вывода), 
DVD 34.5$
66864#66864
Маша очень любила строить башенки из кубиков в детстве, но теперь она уже взрослая, потому башенки из простых кубиков её не интересуют. Она купила детали для башенки, которые представляют собой блок 3*3*1, который очень легко описать матрицей 3 на 3, так как толщина блока всего 1 кубик.
Маше точно известно, что:
  •  при использовании всех блоков, можно гарантированно построить башенку, которая не будет иметь пустот, включая нижнюю и верхнюю границы;
  •  используя все блоки, можно построить башенку только одним и не более способами;
  •  при строительстве башенки блоки нельзя вращать;
  •  только два блока во всём наборе имеют сплошную верхнюю или же нижнюю границу;
  •  глубина пустот в блоке может состоять из 1 или 2 элементов;
  •  блоков, имеющих пустоты, которые нельзя покрыть при сборе башенки не существует.
Напишите программу, помогающую Маше определить, в каком порядке нужно строить башню, исходя из всех ограничений, написанных выше.

Входные данные
В первой строке подаётся число N (1 <= N <= 10) – количество блоков для башенки, далее на 3*N строках вводится по 3 цифры через пробел(0 – у блока отсутствует элемент в этой позиции, 1 – сам блок), представляющие из себя N блоков, доступных для строительства.
Нумерация блоков начинается с 1 и увеличивается при описании каждого последующего блока (то есть первый блок, второй и так далее).
Выходные данные
Вывести в ответе в одну строку через пробел каждый элемент – номера блоков в порядке сбора башни снизу-вверх.

Пояснение
Пример №2

 
66401#66401
Группа молодых энтузиастов "МэК" захотели посчитать сколько сантиметров проходит палец сотрудника колл-центра, когда тот набирает номер телефона клиента на циферблате. Для начального варианта программы достаточно считать сколько палец прошёл в одном из направлений, по горизонтали или по вертикали. Расстояние между центрами всех кнопок равно 1, считается, что всегда нажимается центр кнопки.
Расстояние кнопок по диагонали (45 градусов), например между "1" и "5" равно 1.4. Расстояние между Кнопками под 30 градусов, например между "1" и "6" равно 2,2. Расстояние между "1" и "0", а также между "3" и "0" равно 3.1. Начальная позиция пальца оператора всегда на той цифра с которой начинается номер телефона.

Формат входных данных
На вход программы поступает номер телефона, содержащий от 2 до 20 цифр. Также направления: 0 - горизонталь, 1 - вертикаль.
Формат выходных данных
На выходе программа выдаёт число, равное пройденному расстоянию. Например: номер телефона 8965, считаем горизонталь. Из 8 в 9 +1, из 9 в 6 нет движения по горизонтали, из 6 в 5 +1. Общее пройденное расстояние равно 2.
Циферблат:
123
456
789
0
66175#66175
Старшеклассник Дима собирает робота, который должен передвигаться по рельсам вокруг испытательного стенда. Всего робот умеет выполнять 12 различных команд, но для нас представляют интерес три из них, связанные с управлением манипулятором. Дима решил передавать роботу блоки инструкций в виде числа: робот получает число, переводит его в систему счисления с основанием 12 и выполняет соответствующие цифрам команды. Коды команд, отвечающих за манипуляторы робота, кратны четырём. На вход подаётся N чисел – блоков с наборами команд. В скольких блоках робот выполнил не менее M команд с манипулятором?

Формат ввода На вход программе в первой строке подается натуральное число N (N ≤ 10000) – количество наборов команд. Во второй строке подаётся целое неотрицательное число M (0 ≤ M ≤ 1000) – требуемое количество команд с манипулятором. Далее в N строках на вход подаётся по одному целому числу в диапазоне от 0 до 4*109 – блок команд, записанных в десятичной системе счисления.
Формат вывода Вывести одно целое число – в скольких блоках команд робот выполнил не менее M команд с манипулятором.
65998#65998
Профессор Чадов и аспирант Шлёпов оптимизируют производство октогена. Одним из важных компонентов для создания этой мощной взрывчатки является азотная кислота. Чтобы как можно меньше таскать сосуды с кислотой, лаборанты попросили аспиранта Шлёпова написать программу, которая будет рассчитывать, какие емкости надо принести со склада в лабораторию, чтобы выполнялись несколько условий:
  1. Объем азотной кислоты должен быть не меньше требуемого для работы;
  2. Объем азотной кислоты в лаборатории должен быть минимально возможным;
  3. При прочих равных следует предпочесть переноску меньшего количества емкостей;
Напишите программу, которая поможет лаборантам.

Формат ввода
В первой строке программы вводится натуральное число N (N ≤ 20) – количество емкостей с кислотой. Во второй строке указывается натуральное число V (0 ≤ V ≤ 200 л) – ограничение по объему. Далее в N строчках вводится по одному натуральному числу vi (vi ≤ 20 л) – объем емкости под номером i.
Формат вывода
Вывести в одной строке через пробел в порядке возрастания объемы емкостей, которые надо отнести в лабораторию, уложившись в заданные условия. Если это невозможно, вывести 0.
65996#65996
На курсы по изучению Python записалось N (0<N <= 100) человек. Необходимо составить расписание занятий. Для этого необходимо определить дни, когда на занятиях сможет присутствовать максимальное количество учащихся. Каждый учащийся заполнил специальную анкету, где указал дни, в которые он может посещать курсы. Пожелания были двух типов.
1) Дни недели. Обозначение: строка начиняется с буквы “w”; далее идет цепочка цифр без пробелов: 1 – понедельник, 2 – вторник, 3 - среда, 4 – четверг, 5 – пятница, 6 – суббота, 7 - воскресенье. Например, в строке “w134” – закодировано, что учащийся может проходить обучение по понедельникам (1), средам (3) и четвергам (4).
2) Чётные/нечётные даты. Обозначение: строка начиняется с буквы “d”; далее идет одна цифра: 1 – нечётные даты, 0 – чётные даты. Например, в строке “d1” – закодировано, что учащийся может проходить обучение по нечетным датам (1, 3, 5, 7, …, 29, 31).
Каждый учащийся высказал пожелание только одного типа.
Необходимо определить, сколько дней в период обучения таковы, что на занятиях может присутствовать максимальное количество учащихся.
Гарантируется, что дата начала меньше даты окончания обучения, что обучение начинается не ранее 1 января 2023 года. Период не превышает двух календарных лет. 01.01.2023 – воскресенье (остальные дни недели должна определять программа).

Входные данные:
Построчно.
Дата начала интервала обучения в формате dd.mm.yyyy
Дата окончания интервала обучения (включая этот день) в формате dd.mm.yyyy
N – количество учащихся.
В каждой последующей строчке закодированы пожелания учащихся (формат смотри выше).
Выходные данные:
Два числа через пробел.
Количество дней с максимальным количеством учащихся, планирующих посетить занятия.
Планируемое максимальное количество учащихся на занятии.
Примеры
Входные данные Выходные данные Примечание
1 02.01.2023
16.01.2023
5
w134
d0
w123
w15
d0
2 5 Все пятеро учащихся смогут присутствовать на занятиях 2 и 16 января 2023 года (два дня).
2 02.01.2023
16.01.2023
5
w134
d0
w123
w15
d1
3 4 На занятиях максимально может присутствовать только четверо из пятерых учащихся. Даты, когда это возможно: 2, 9 и 16 января 2023 года (три дня).
3 10.01.2023
13.01.2023
5
w135
d1
w13
w15
d1
2 4 А 11 и 13 января будет максимальное количество человек - 4 (два дня).
65994#65994
Группа исследователей управляет зондом. Команды установленному на зонде фотоаппарату подаются вместе с блоком иной информации. Каждый блок представляет собой набор цифр в шестнадцатеричной системе счисления (0123456789ABCDEF). Команда вычисляется на основе последней цифры троичной записи суммы цифр блока:
0: «Снимок».
1: «Снимок со вспышкой»
2: «Очистить память» – очищает память зонда, удаляя все сохраненные фотографии.
Определите максимальное количество фотографий, которые были единовременно удалены из памяти после выполнения n команд.

Формат ввода
В первой строке программе подается на вход число натуральное число n, не превышающее 1000.
Далее в каждой из n строк идет команда – набор цифр в шестнадцатеричной системе счисления (0123456789ABCDEF), длина команды не превышает 100 знаков.
Формат вывода
Вывести одно число – максимальное количество фотографий, которые были единовременно удалены из памяти после выполнения n команд.
65992#65992
Город имеет форму круга радиуса R с центром в точке (0,0).
Сеть метро состоит из N линий метро (часть линий или все проходят через город).
Линия метро - ломаная из отрезков прямых, вершины которых имеют целочисленные координаты. Линия метро не имеет самопересечений и может быть замкнутой. Во всех точках с целочисленными координатами, через которые проходят линии метро расположены станции метро .
Для каждой точки с целочисленными координатами определим параметр вес вершины. Вес вершины — это количество станций метро, расстояние до которых не более 1 (длины клетки).
Город разбит на кварталы. Квартал — это единичная клетка с целочисленными координатами вершин, хотя бы одна из которых находящаяся строго внутри города.
Для каждого квартала определим параметр доступность. Доступность квартала равна сумме весов вершин квартала (вершина квартала может быть вне города)
Найдите значение "доступности" для каждого квартала. Для каждой полученной "доступности" определите число кварталов, имеющих эту доступность.
Входные данные
В первой строке заданы значения R, N (4<R<201, 0<N<1001)
В следующих N строках заданы описания линий метро.
Каждая линия описывается следующим образом:
первое число в строке M равно количеству вершин ломаной, далее даны координаты вершин (по два числа на вершину).
Замкнутые ломаные определяются тем, что координаты начальной и конечной вершины совпадают.
Выходные данные
В первой строке выведите число K - количество различных значений "доступности" (включая нулевую).
В следующих K строках выведите по два числа - значение "доступности" и число кварталов, имеющих такое значение "доступности"

Примеры:

 
 
Входные данные Выходные данные Примечание
1 5 3
6 2 -4 -2 -4 -4 0 0 4 4 0 2 -4
4 -6 3 0 -1 2 -1 5 -4
3 5 4 0 -1 -6 -4
14
0 3
1 1
2 4
3 8
4 10
5 9
6 12
7 11
8 13
9 5
10 6
11 3
12 2
13 1
Город (рис. 1,2) расположен в круге радиуса 5 с центром в точке (0,0).
Сеть метро состоит из 6 линий метро (2 радиальных, 1 кольцевая):
6 2 -4 -2 -4 -4 0 0 4 4 0 2 -4 - кольцевая линия из 5 звеньев, 16 станций
4 -6 3 0 -1 2 -1 5 -4 - радиальная линия из 3 звеньев, 8 станций
3 5 4 0 -1 -6 -4 - радиальная линия из 2 звеньев, 9 станций
Есть три пересадки ( в вершинах (-3,1), (0,-1), (3,-2))
На рис.1 отмечены вершины, которые не являются станциями и
имеют не нулевой вес (треугольник - вес 1, крестик - вес 2, ромб - вес 3)
На рис.2 для всех городских кварталов указано значение параметра
доступности квартала.


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