Необходимо написать программу, которая группирует студентов по их группам.
Формат входного файла
В первой строке входного файла дано число
n
— количество студентов. Далее следует
n
строк, в каждой из которых записаны группа и имя студента.
Группа и имя студента разделены символом табуляции.
Формат выходного файла
Выходной файл должен содержать список студентов, сгруппированный по группам. Для каждой группы необходимо вывести имя группы, а затем все имена студентов, которые принадлежат этой группе в алфавитном порядке, каждое в новой строке.
Сами группы следуют также в алфавитном порядке.
Ответы
Ответ:
Для решения данной задачи можно использовать словарь, где ключами будут являться названия групп, а значениями списки студентов, относящихся к этим группам. Затем, после заполнения словаря, можно отсортировать ключи (названия групп) и вывести по очереди каждую группу со списком студентов, отсортированных по именам.
Объяснение:
Вот пример решения на языке Python:
n = int(input()) # количество студентов
groups = {} # словарь для хранения групп и студентов
for i in range(n):
group, name = input().split('\t') # считываем группу и имя студента
if group in groups:
groups[group].append(name) # если группа уже есть в словаре, добавляем студента
else:
groups[group] = [name] # если группы еще нет в словаре, создаем новую запись
# сортируем и выводим группы со студентами
for group in sorted(groups.keys()):
print(group)
for name in sorted(groups[group]):
print(name)