Більшість користувачів сучасних (і багатьох не таких сучасних) операційних систем знайомі з поняттям шляху, який є рядком, що вказує маршрут у дереві файлової системи від заданого початкового вузла (каталогу) до бажаного вузла призначення. Абсолютний шлях починається з кореня дерева і завжди починається з "/". Відносний шлях надає подібну інформацію, але починається з поточного каталогу (також званого поточним робочим каталогом), який є просто заданим вузлом у дереві; відносний шлях ніколи не починається з "/". Імена вузлів у шляху розділяються "/". Ім'я вузла "." відноситься до поточного вузла, а ім'я вузла ".." відноситься до батьківського вузла поточного вузла (на один рівень вище в дереві). За домовленістю, вузол "/" є своїм власним батьком, тому "/.." і "/." є такими ж, як "/".

Приклади: Розглянемо кілька простих прикладів на основі простого дерева файлової системи, показаного ліворуч. "/home/john" є абсолютним шляхом до нижнього лівого вузла в дереві, а "/var/mail" є абсолютним шляхом до нижнього правого вузла в дереві. "/home/mary/.." є абсолютним шляхом, еквівалентним "/home". Якщо поточний каталог є "/var", то відносний шлях "../home/./mary" є еквівалентним абсолютному шляху "/home/mary". Нарешті, якщо поточний каталог є "/var/mail", то відносний шлях "../../home/john/." є еквівалентним абсолютному шляху "/home/john".
Дано шлях P, який є або абсолютним, або відносним, і абсолютний шлях C до поточного каталогу, визначте відносний шлях S до того ж вузла, який ідентифікується P, так, щоб S був найкоротшим можливим правильним відносним шляхом (тобто мав найменшу кількість символів). Зверніть увагу, що кожен шлях повинен мати принаймні один символ.
Буде кілька випадків для розгляду, кожен з яких міститиме два рядки вводу. Перший рядок міститиме шлях P, а другий рядок міститиме абсолютний шлях C. Рядок, що слідує за останнім випадком, міститиме лише кінець рядка. Імена вузлів міститимуть від до малих літер алфавіту, але "/", "." і ".." також можуть з'являтися в шляхах. Жоден рядок вводу не міститиме пробілів (символів табуляції або пробілу). Вхідні та вихідні шляхи ніколи не будуть довшими за символи.
Для кожного випадку вводу відобразіть п'ять рядків, як показано нижче. На першому рядку відобразіть номер випадку вводу (, , …). На наступному рядку відобразіть "P = " (з відступом у три пробіли) і значення P. На наступних двох рядках відобразіть C і S аналогічним чином. Останній рядок виходу для кожного випадку повинен бути порожнім рядком.
Цей формат ілюструється у зразках.
Приклад 1