Задачи
Задача 1
Напишите программу, которая определяет, является ли данное число произведением двух чисел из данного набора, и выводит «ДА» или «НЕТ» в зависимости от этого. Если число в наборе такое одно, само на себя умножиться оно не может, т. е. два множителя должны иметь разные номера в наборе.
Формат ввода
На первой строке вводится количество чисел в наборе.
Далее идут целые числа, составляющие набор (могут повторяться).
Затем следует целое число, которое является или не является произведением двух каких-то чисел из набора.
Формат вывода
ДА или НЕТ
Пример
Ввод
Вывод
Задача 2
Имеется страница классного журнала с оценками за контрольную работу по информатике. Чтобы учителю удобнее было выбрать тех школьников, которым она предложит отправиться на олимпиаду по программированию, отобразите только отличников и хорошистов.
Формат ввода
Вводится натуральное число N — количество школьников.
Далее следует N строк, каждая строка состоит из фамилии школьника, символа табуляции и его оценки (натуральное число от 1 до 5).
Формат вывода
Сначала выводятся все введённые строки с фамилиями и оценками учеников в том же порядке.
Затем следует пустая строка.
Затем выводятся только те строки из введённых, где указана оценка 4 или 5 (в том же порядке).
Пример
Ввод
Вывод
Задача 3
Отсортируйте введённые строки по возрастанию в алфавитном порядке. В этой задаче (и других задачах к этому занятию) под алфавитным порядком подразумевается, что каждая следующая строка должна быть больше предыдущей с точки зрения оператора сравнения «>» в Питоне; в частности, все строчные буквы идут после всех заглавных.
Формат ввода
На первой строке вводится натуральное число N — количество строк.
Далее следуют N строк, которые надо будет отсортировать.
Формат вывода
Выводятся те же N строк, но не в том порядке, в котором они вводились, а в алфавитном порядке по возрастанию.
Пример
Ввод
Вывод
Задача 4
Отсортируйте введённые строки по возрастанию их длины, строки одинаковой длины при этом должны быть отсортированы по возрастанию в алфавитном порядке.
Формат ввода
На первой строке вводится натуральное число N — количество строк.
Далее следуют N строк, которые надо будет отсортировать.
Формат вывода
Выводятся те же N строк, но не в том порядке, в котором они вводились, а в порядке возрастания их длины. Строки одинаковой длины должны быть отсортированы в алфавитном порядке по возрастанию.
Пример
Ввод
Вывод
Задача 5
Децимация (от «децимус» – десятый) — это жесточайшее коллективное наказание в римской армии, когда за большую провинность казни подвергался каждый десятый воин по жребию.
Однако, время непомерной жестокости прошло, и мы не казним провинившихся, как в римской империи, мы просто отправляем их в наряд вне очереди.
Предположим, вы командуете очень неорганизованным подразделением современной армии, который заслужил сразу несколько подобных наказаний. При этом, вопреки названию процедуры, вы можете наказывать не каждого десятого воина, а с какой-то другой периодичностью. Кроме того, жребий не применяется, а солдаты просто выстраиваются в шеренгу подряд и так и стоят в том же порядке, пока всё продолжается.
Напишите программу, которая сразу определит, кто из солдат не получит внеочередной наряд после этой многократной совсем-не-децимации.
Формат ввода
На первой строке вводится натуральное число N — количество солдат.
Далее следуют имена солдат в количестве N штук на отдельных строках.
Далее на отдельной строке следует натуральное число K — наряд получит каждый K-й солдат.
Наконец, на последней строке указывается натуральное число M — сколько раз будет повторено наказание каждого K-го.
Формат вывода
Нужно вывести на отдельных строках в том же порядке имена всех тех солдат, которых минует наказание.
Пример
Ввод
Вывод