Задание выполняется с использованием прилагаемых файлов
Компания по разработке игр открыла набор на работу в офис. На просторах сайта (сайт не уточняется) расположены резюме по поиску работы в сфере разработки игр. Среди них HR-менеджер Петров Влад обязан отобрать только высококвалифицированных и продуктивных программистов, которые смогут справиться со всеми задачами в их компании. При отборе Влад смотрит на КПД (сводка по образованию, опыту работы в данной сфере, качество портфолио). КПД должен составлять более %. Известен КПД каждого соискателя.
По заданной информации о КПД соискателя и о количестве вакантных мест в компании определите максимальное количество потенциальных работников, КПД которых выше %, а также максимальное КПД работника, найденного в таблице при условии, что найдено максимальное количество высококвалифицированных программистов.
Входные данные
В первой строке входного файла находятся два числа: — количество вакантных мест (натуральное число, не превышающее
) и
— количество соискателей (натуральное число, не превышающее
). В следующих
строках находятся значения о КПД каждого соискателя (все числа натуральные, удовлетворяющие условию:
), каждое в отдельной строке
Выходные данные
Запишите в ответе два числа: сначала максимальное количество потенциальных работников, КПД которых выше %, а также максимальное КПД работника, найденного в таблице при условии, что найдено максимальное количество высококвалифицированных программистов.
Пример входного файла:
При таких исходных данных можно заполнить только вакантных места. Эти люди со следующим КПД:
,
,
,
. А максимальное КПД соискателя равно
%. Таким образом, ответ для вышеприведенного примера будет:
.
Решение 1 ( Excel / LibreOffice):
Откроем текстовый документ, скопируем значения и перенесем их в Excel или LibreOffice.
Перенесем числовые значения количества вакантных мест и количества соискателей, где они нам не помешают. Сортируем числа по возрастанию. Выделяем 500 элементов, начиная с первого, числовое значение которого больше 79. Мы получили, что количество вакантных мест больше, чем количество подходящих нам соискателей. Запишем полученное количество подходящих соискателей и элемент, имеющий максимальное числовое значение, в ответ.
Решение 2 (Python):
f = open(’Задание 26.txt’)
S, N = map(int, f.readline().split())
a = []
for i in range(N):
a.append(int(f.readline()))
a.sort(reverse=True)
ans = []
for i in range(S):
if a[i] > 79:
ans.append(a[i])
print(len(ans), a[0])