Задача к ЕГЭ по информатике на тему «Программирование – оптимизация по времени и по памяти» №3

На столе выложили цепочку из N  костяшек по принципу домино. Под костяшкой понимается пара любых неотрицательных чисел, каждое не превышает 100  . В наборе могут быть одинаковые костяшки. Переставлять местами костяшки нельзя и нельзя поворачивать любое количество костяшек (нельзя из костяшки 1 − 2  получить костяшку 2 − 1  ).

Определите максимальную длину цепочки костяшек домино, которую можно получить. Под цепочкой понимается последовательность костяшек, в которой второе число первой костяшки равно первому числу второй.

Входные данные

Дан входной файл, он содержит в первой строке количество пар N  (1 ≤ N ≤ 100000  ). Каждая из следующих   N  строк содержит два натуральных числа, не превышающих 100  .

В ответе укажите одно число: искомое значение для файла.

file = open("D1.txt", "r")
n = int(file.readline())
current_dom = [int(s) for s in file.readline().split()]
prev_dom = current_dom.copy()

current_len = 1
answer = 1

for i in range(1, n):
    current_dom = [int(s) for s in file.readline().split()]

    old_current_len = current_len
    current_len = 1

    # Если начало текущей совпадает с концом предыдущей
    if (current_dom[0] == prev_dom[1]):
        current_len = old_current_len + 1

    if current_len > answer:
        answer = current_len

    prev_dom = current_dom.copy()

file.close()
print(answer)

Ответ: 3
Оцените статью
Я решу все!