задача по информатике на любом языке Небольшая, но очень дружная компания из N студентов решила «шикануть» и проехать на поезде из одного города в другой в купейном вагоне. При покупке билетов они хотели разместиться как можно более компактно (чтобы поездка была веселее) и при этом еще и по возможности сэкономить на суммарной стоимости всех билетов.
Требование максимальной компактности размещения предполагает, что все места должны иметь последовательную нумерацию, без пропусков (находиться в соседних купе). Незанятые компанией места (свободные или занятые другими пассажирами) могут оставаться не более, чем в одном купе.
Требование минимальной стоимости означает, что в случае возможности выбора билеты приобретаются на места более дешевой категории (если это не приводит к нарушению требования максимальной компактности размещения).
Стандартная схема нумерации мест в 36-местном купейном вагоне предполагает наличие мест двух категорий: «нижние» (1, 3, 5, ..., 35) и «верхние» (2, 4, 6, ..., 36). Стоимость «нижнего» места всегда больше либо равна стоимости «верхнего» места. В вагоне всего девять купе, в каждом по четыре места (1..4, 5..8, и т.д.).
Как это часто бывает, решение о путешествии было принято в последний момент, когда часть мест в единственном купейном вагоне подходящего поезда уже была занята студентам определить, возможно ли размещение в вагоне, соответствующее их требованиям, и, при наличии нескольких вариантов, выбрать такой, который имеет минимальную суммарную стоимость всех билетов.
Входные данные
В первой строке через пробел записаны два неотрицательных целых числа, не превышающих 10000 – сначала стоимость «нижнего» места, затем стоимость «верхнего» места.
Во второй строке записаны два неотрицательных целых числа – численность компании N (1≤N≤36) и количество свободных мест в купейном вагоне S (0≤S≤36).
Если S>0, то в третьей строке через пробел записаны S чисел – номера всех свободных мест в вагоне в порядке возрастания.
Выходные данные
Вывести минимально возможную суммарную стоимость всех билетов для размещения всех студентов, отвечающего их требованиям.
В случае отсутствия возможности необходимого размещения, вывести «-1».
Интернет стал предметом первой необходимости. В немможно совершать покупки, общаться с друзьями, получатьобразование, работать. Возможности Интернета стали практически безграничными.
Говорят, без еды человек может прожить примерно 2 месяца (если будет пить), без воды человек погибает через 5-7 дней, а можно ли прожить без интернета??? Вы представляли когда-нибудь мир без Интернета?
Недавно, люди жили без великого творения - Интернет. Остается только удивляться: как? В последние годы, из информационного ресурса, Интернет превратился в незаменимую и очень важную часть нашей жизни. Работа, учёба, общение — всё связано с Всемирной Паутиной. Сеть перестала быть источником информации — теперь это поставщик услуг: увеселительных, образовательных.… Да любых. Чтобы скрасить одинокий вечер люди не идут в парк или кафе, они заходят в Интернет. Они ищут развлечений в электронной системе, а не среди живых людей.
# 1.
# Полагаю, что в техническом задании ошибка и считаю фразу "делятся на" фразой "целочисленно делятся на".
def IsDivisible(digit, n): return (digit % n == 0)
digits=range(20, 50 + 1)
required=[str(digit) for digit in digits if IsDivisible(digit, 2) and not IsDivisible(digit, 5)]
print("Result:\n", '\n'.join(required))
# 2.
# Боль от запятой. Голову изломал от этого дробного остатка...
digits=range(35, 87 + 1)
required=[str(digit) for digit in digits if digit % 7 == 1 or digit % 7 == 2 or digit % 7 == 5]
print("Result:\n", '\n'.join(required))