27.06 Доминошки
Ошибка.
Попробуйте повторить позже
На столе выложили цепочку из костяшек по принципу домино. Под костяшкой понимается пара любых неотрицательных чисел, каждое не превышает . В наборе могут быть одинаковые костяшки. Переставлять местами костяшки нельзя, но можно поворачивать любое количество костяшек, получая, например, из костяшки - костяшку -. Определите максимальную длину цепочки костяшек домино, которую можно получить с помощью переворачиваний. Под цепочкой понимается последовательность костяшек, в которой второе число первой костяшки не равно первому числу второй.
Входные данные
Дан входной файл, он содержит в первой строке количество пар (). Каждая из следующих строк содержит два натуральных числа, не превышающих .
В ответе укажите одно число: искомое значение для файла.
file = open("domino.txt", "r") n = int(file.readline()) current_dom = [int(s) for s in file.readline().split()] prev_dom = current_dom.copy() current_len = 1 current_len_reversed = 1 answer = 1 for i in range(1, n): current_dom = [int(s) for s in file.readline().split()] old_current_len = current_len old_current_len_reversed = current_len_reversed current_len, current_len_reversed = 1, 1 # Если начало текщей не совпадает с концом предыдущей if (current_dom[0] != prev_dom[1]): current_len = old_current_len + 1 # Если начало текущей не совпадает с началом предыдущей if (current_dom[0] != prev_dom[0]): current_len = max(current_len, old_current_len_reversed + 1) # Если конец текущей не совпадает с концом предыдущей if (current_dom[1] != prev_dom[1]): current_len_reversed = old_current_len + 1 # Если конец текущей не совпадает с началом предыдущей if (current_dom[1] != prev_dom[0]): current_len_reversed = max(current_len_reversed, old_current_len_reversed + 1) if current_len > answer: answer = current_len if current_len_reversed > answer: answer = current_len_reversed prev_dom = current_dom.copy() file.close() print(answer)
Специальные программы
Программа
лояльности v2.0
Приглашай друзей в Школково и получай вознаграждение до 10%!
Крути рулетку
и выигрывай призы!
Крути рулетку и покупай курсы со скидкой, которая привязывается к вашему аккаунту.
Бесплатное онлайн-обучение
Для школьников из приграничных территорий России, проживающих в ДНР, ЛНР, Херсонской, Запорожской, Белгородской, Курской, Брянской областях и Крыму.
Налоговые вычеты
Узнай, как получить налоговый вычет при оплате обучения в «Школково».
Специальное предложение
для учителей
Бесплатный доступ к любому курсу подготовки к ЕГЭ, ОГЭ и олимпиадам от «Школково». Мы с вами делаем общее и важное дело, а потому для нас очень значимо быть чем-то полезными для учителей по всей России!
Вернём деньги за курс
за твою сотку на ЕГЭ
Сдать экзамен на сотку и получить обратно деньги за подготовку теперь вполне реально!