2-й этап Республиканской олимпиады по информатике 2020-2021
Задача C. ICPC
Ограничение по времени:
1 секунда
Ограничение по памяти:
256 мегабайт
Новое правило в чемпионате мира по программированию ICPC: можно использовать три компьютера. Давайте посмотрим как это повлияла на одну из сильнейших команд с Казахстана. Кирилл, Айбар и Султан начали писать контест. В контесте всего $n$ задач и длится 5 часов. Они уже оценили время которое они потратят на каждую задачу. Кирилл решает задачу с номером $i$ за $a_i$ минут. Айбар за $b_i$. Султан за $c_i$. Как и всегда нужно решить как можно больше задач с меньшим штрафом. Штраф определяется как сумма времени решения для каждой принятой задачи. Например, если команда сдаст первую задачу на $5$ минуте, а вторую на $10$ минуте то штраф будет равен $5 + 10 = 15$. Вам нужно определить какой самый лучший результат может получить команда.
Формат входного файла
В первой строке дано одно целое числа $n$ ($1 <= n <= 10$) - количество задача на контесте.
В следующих $n$ строк даны по три числа $a_i$, $b_i$ и $c_i$ $(1 <= a_i, b_i, c_i <= 500)$ - время которое Кирилл, Айбар и Султан потратят на задачу соответственно.
Формат выходного файла
Выведи максимальное количество задач и минимальный штраф.
Система оценки
Данная задача состоит из $10$ тестов. Каждый тест оценивается в 10 баллов.
- Примеры из условии.
- $n = 1$.
- $n = 2$.
- Для каждого $i$ выполняется $a_i = b_i = c_i$.
- Для каждого $i$ выполняется $a_i = b_i = c_i$.
- $n = 6$.
- $n = 7$.
- $n = 8$.
- $n = 9$.
- $n = 10$.
Пример:
Вход 2 1 123 345 300 301 301Ответ
2 423( Batyr Sardarbekov )
Комментарий/решение:
Связи с пандемией, олимпиады проходили в срезанном виде, поэтому исключили второй тур. Так везде было.
numbers = [tuple(map(int, input().split(" "))) for i in range(int(input()))]
res = []
[res.append(min(number)) for number in numbers if not(sum(res) + min(number) >= 500)]
print(len(res), sum(res))
Возможно, что при неправильном наборе формул, они будут
доредактированы модератором. При этом содержание не будет меняться.