При проведении эксперимента заряженные частицы попадают на чувствительный экран, представляющий из себя матрицу размером 10 000 на 10 000 точек. При попадании каждой частицы на экран в протоколе фиксируются координаты попадания: номер ряда (целое число от 1 до 10 000) и номер позиции в ряду (целое число от 1 до 10 000).
Точка экрана, в которую попала хотя бы одна частица, считается светлой, точка, в которую ни одна частица не попала, – тёмной.
При анализе результатов эксперимента рассматривают группы светлых точек, расположенных в одном ряду подряд, то есть без тёмных точек между ними.
Вам необходимо по заданному протоколу определить максимальную длину такой группы и номер ряда, в котором эта группа встречается. Если таких рядов несколько, укажите минимально возможный номер.
Входные данные
Первая строка входного файла содержит целое число N – общее количество частиц, попавших на экран. Каждая из следующих N строк содержит 2 целых числа: номер ряда и номер позиции в ряду.
В ответе запишите два целых числа: сначала максимальную длину непрерывной группы светлых точек, затем – номер ряда, в котором эта группа встречается.
СтатГрад Вариант ИН2110301 08.02.2022 – задание №25
Решение:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 |
f=open('ege-inf-stat08022022-26.txt') n = int(f.readline()) a = [] for i in range(10001): a.append([0] * 10001) for i in range(n): x, y = map(int, f.readline().split()) a[x][y] = 1 m = 0 r = 0 for i in range(10001): k = 0 for j in range(10001): if a[i][j] == 1: k += 1 if k > m: m = k r = i else: k = 0 print(m, r) |
Решение — Ижецкий Виталий Андеевич
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 |
input = open('ege-inf-stat08022022-26.txt').readline n = int(input()) a = sorted([list(map(int, input().split())) for _ in range(n)]) mx, row = 0, 0 now = 1 for i in range(1, n): if a[i] == a[i - 1]: continue if a[i][0] == a[i - 1][0] and a[i][1] - a[i - 1][1] == 1: now += 1 else: if now > mx: mx = now row = a[i - 1][0] now = 1 print(mx, row) |
Решение на Excel — Нигматуллин Амир Рамисович
Ответ: 10 2786
