- 1 курс
- 2 курс
- 3 курс
- 4 курс
- 5 курс
- 6 курс
Old
Old
This is an old revision of the document!
Дана некоторая корневая директория, в которой может находиться некоторое количество папок, в том числе вложенных. В этих папках хранятся некоторые текстовые файлы, имеющие имя вида <filename>.txt.
Требуется найти файл, который содержит строку “Minotaur” (файл-минотавр).
Файл, с которого следует начинать поиск, всегда называется file.txt (но полный путь к нему неизвестен).
Каждый текстовый файл, кроме искомого, может содержать в себе ссылку на название другого файла (эта ссылка не содержит пути к файлу). Таких ссылок может быть несколько.
Пример:
@include a2.txt @include b5.txt @include a7.txt
А также файл может содержать тупик:
Deadlock
Программа должна вывести правильную цепочку файлов (с путями), которая привела к поимке файла-минотавра.
file.txt: @include file1.txt @include file4.txt @include file5.txt file1.txt: Deadlock file2.txt: @include file3.txt file3.txt: Minotaur file4.txt: @include file2.txt @include file1.txt file5.txt: Deadlock
Правильный ответ:
root/add/add/file.txt root/add/mul/add/file4.txt root/add/mul/file2.txt root/add/mul/file3.txt
! Цепочка, приводящая к файлу-минотавру может быть только одна. ! Общее количество файлов в каталоге не может быть больше 200. ! Циклических зависимостей быть не может. ! Файлы не могут иметь одинаковые имена.