ДАЮ 60 БАЛЛОВ
Задача по программированию.
Дать код только на питоне, паскали и другой дичи не надо.
Условие:
В каждой строке сначала записан номер класса (число, равное 9, 10 или 11), затем (через пробел)
— фамилия ученика.
Необходимо вывести список школьников по классам: сначала всех учеников 9 класса, затем — 10,
затем — 11. Внутри одного класса порядок вывода фамилий должен быть таким же, как на входе.
Формат входных данных:
В первой строке записано число n (3 ⩽ n ⩽ 1000) — количество записей.
В каждой из следующих n строк сначала записан номер класса (число, равное 9, 10 или 11),
затем (через пробел) — фамилия ученика.
Формат выходных данных:
Необходимо вывести список школьников по классам: сначала всех учеников 9 класса, затем — 10,
затем — 11. Внутри одного класса порядок вывода фамилий должен быть таким же, как на входе.
Пример:
ввод:
6
9 Ivanov
10 Petrov
11 Sidorov
9 Grigoryev
9 Sergeev
10 Yakovlev
вывод:
9 Ivanov
9 Grigoryev
9 Sergeev
10 Petrov
10 Yakovlev
11 Sidorov
Answers & Comments
Ответ:
n = int(input())
pupilsNine = []
pupilsTen = []
pupilsEleven = []
for i in range(0, n):
arr = input().split(' ')
if arr[0] == '9':
pupilsNine.append(arr[1])
elif arr[0] == '10':
pupilsTen.append(arr[1])
elif arr[0] == '11':
pupilsEleven.append(arr[1])
for i in pupilsNine:
print(f"9 {i}")
for i in pupilsTen:
print(f"10 {i}")
for i in pupilsEleven:
print(f"11 {i}")
print(*[f"{data[0]} {data[1]}" for data in sorted([(input().split( )) for _ in range(int(*[n for n in [int(input())] if 3 <= n <= 1000 ]))], key=lambda x: int(x[0]))], sep='\n')
ето одна строчка ^_^