Чтобы следить за успеваемостью своих учеников, Макс начал использовать на занятиях электронный дневник.
Для очередного занятия Макс составил N задач по программированию. Задачи обозначаются первыми N буквами латинского алфавита: A, B, C и так далее. В течение занятия ученики отправляют решения задач в тестирующую систему, при этом правильные решения отмечаются в дневнике.
Дневник представляет собой таблицу, имеющую (N + 1) столбцов. Первый столбец имеет заголовок Surname и содержит фамилии учеников. Остальные столбцы озаглавлены первыми буквами латинского алфавита и содержат отметки о решении соответствующих задач.
Если i-й ученик решил j-ю задачу, то на пересечении i-й строки и (j + 1)-го столбца появляется знак + (повторные решения одной и той же задачи не учитываются). Ученики в таблице сортируются по убыванию количества решённых задач, а в случае равного количества — по алфавиту.
Фамилии в первом столбце выравниваются по левому краю. Столбцы отделяются друг от друга одиночными пробелами (после последнего столбца пробел не ставится). Все строки завершаются символом переноса строки.
Помогите Максу написать программу, которая формирует таблицу успеваемости по данным о решении задач.
Выходные данные
Выведите две или более строк, содержащих таблицу дневника, отформатированную в соответствии с правилами (см. примеры).