Заяц
От: olimp_20  
Дата: 24.10.16 16:23
Оценка:
В небольшой посадке живет заяц. Выскочив из норы и бегая по снегу, он оставил следы. Определить где находится заяц.
Входные данные
Карта движения зайца задана N (1≤N≤100) строками, которые содержат последовательность заглавных латинских букв первая буква откуда следующие куда.
Выходные данные
Выведите последовательность букв в столбик в порядке возрастания, которые указывают возможное местоположение зайца, если карта не может быть движением зайца вывести NO SOLUTION.

Пример
10
B C D K M A
C D K L
D L R
K L Q N M
M N A
A P N
N P
Q P R L
L R
R P

Ответ
B
L

Вопрос, правильно ли понимание примера, что :
1)  часть пути - это B->C->D->K->M->A->P->R->L->Q->N
                                    |               |
                                     ---------------

2) "Выведите последовательность букв ... в порядке возрастания" — означает, что предварительно выполняется топологическая сортировка, где L получает меньший номер, чем А, хотя обе вершины находятся в одном цикле?

3) NO SOLUTION — ответ, когда не существует пути, по которому можно пройти все вершины (в примере — выйдя из В можно посетить все вершины)?
Re: Заяц
От: Буравчик Россия  
Дата: 24.10.16 17:20
Оценка: 3 (2) +2
Здравствуйте, olimp_20, Вы писали:

_>Пример

_>10
_>B C D K M A
_>C D K L
_>D L R
_>K L Q N M
_>M N A
_>A P N
_>N P
_>Q P R L
_>L R
_>R P

_>Ответ

_>B
_>L

Похоже здесь описан граф.
Анлийские буквы — вершины.
Каждая строчка — это список ребер, выходяших из вершины, которая стоит в начале строки.
Т.е. строка "M N A" означает наличие в графе ребер M->N и M->A

Таким образом мы можем построить весь граф.


_>2) "Выведите последовательность букв ... в порядке возрастания" — означает, что предварительно выполняется топологическая сортировка, где L получает меньший номер, чем А, хотя обе вершины находятся в одном цикле?


Думаю так: по заданному графу нужно определить, можно ли обойти граф по всем ребрам, проходя каждое ребро строго по одному разу. Т.е. определить наличие Эйлерова пути

Конец такого пути и будет ответом. А также начало пути, если граф неориентирован.
Или ответом будут все вершины, если есть эйлеров цикл.

_>3) NO SOLUTION — ответ, когда не существует пути, по которому можно пройти все вершины (в примере — выйдя из В можно посетить все вершины)?


Если пути нет, то NO SOLUTION
Best regards, Буравчик
Отредактировано 24.10.2016 17:21 Буравчик . Предыдущая версия .
Re[2]: Заяц
От: olimp_20  
Дата: 25.10.16 11:03
Оценка:
Здравствуйте, Буравчик, Вы писали:

Б>Конец такого пути и будет ответом. А также начало пути, если граф неориентирован.


Спасибо: то что граф может быть неоритированным — помогло понять пример.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.