Статья Автор: Лебедев Дмитрий

TUZ_3-02 Цикл домино

TUZ_3-02 Цикл домино

TUZ_3-02 Цикл домино
3.2. Цикл домино
Костяшку домино можно представить кортежем (x, y), где x и y – положи- тельные целые числа. Цель этой задачи – определить,
имеется ли цикл домино в заданном наборе костяшек.
Например, в наборе [(5, 2), (2, 3), (3, 4), (4, 5)] имеется цикл домино.
  • Первая костяшка (5, 2) связана с (2, 3); 2 → 2.
  • Костяшка (2, 3) связана с (3, 4); 3 → 3.
  • Так же связаны остальные костяшки: 4 → 4, 5 → 5.
Ваша задача: написать функцию, которая принимает список костяшек домино и возвращает True,
если в последовательности есть цикл, иначе возвращает False.
В табл. 3.2 показаны ожидаемые результаты для некоторых входных данных.
Таблица 3.2. Некоторые ожидаемые результаты для задачи проверки цикла домино
Tiles Ожидаемый результат
[(5, 2), (2, 3), (3, 4), (4, 5)] True
[(3, 4), (4, 2), (2, 3), (3, 1), (4, 2)] False
[(3, 4), (4, 2), (2, 3), (3, 1), (4, 2), (2, 4), (6, 3), (3, 2)] False
[(6, 4), (4, 5), (5, 6)] True

Алгоритм
Алгоритм должен проверить равенство компонентов y и x двух сравниваемых кортежей на каждом шаге.
Если они не равны, он должен вернуть False, иначе он должен вернуть True.


Пропустить Навигационные Ссылки.
Чтобы оставить комментарий нужна авторизация
Печать