eolymp
bolt
Try our new interface for solving problems
Problems

Сравнение URL

Сравнение URL

Для идентификации ресурсов в сети Internet используются URL (Uniform Resource Locator). URL состоит из нескольких элементов: \textit{протокол}, \textit{хост}, \textit{порт}, \textit{путь}, \textit{файл} и \textit{секция}. Некоторые элементы URL могут быть опущены. Рассмотрим упрощенный формат URL: \textbf{\[протокол://\]хост\[:порт\]\[путь/\[файл\[#секция\]\]\]} Заключенные в квадратные скобки элементы могут быть опущены, т.е. например, можно не указать протокол или секцию. Но, например, если указан файл, то обязательно должен быть указан путь. Регистр букв в элементах URL не важен. Рассмотрим кратко все элементы URL: \textit{Протокол} -- это способ доступа к файлу, URL с разными протоколами и одинаковыми остальными элементами могут указывать на различные ресурсы. \textit{Хост} и \textit{порт }-- это имя некоторого сервера в сети и способ доступа к нему (порт -- натуральное число, не превосходящее 65535). \textit{Путь }представляет собой путь к файлу, содержащему запрашиваемый ресурс, от некоторого каталога на сервере, который называется \textit{корневым}. При этом для разделения имен каталогов используется символ "/". Путь, если он не пуст, всегда начинается с символа "/". Специальное обозначение '.' соответствует самому каталогу, '..' -- родительскому каталогу. \textit{Файл} -- это файл, содержащий запрашиваемый ресурс. Наконец, файл может быть разбит на \textit{секции} каким‑либо способом, и можно указать, к какой именно секции вы хотите обратиться. Различные символы в URL могут быть заменены своими шестнадцатеричными ASCII‑кодами с помощью символа \%, например a = \%41, Z = \%5A. В коде всегда используется ровно две шестнадцатеричные цифры. Некоторые символы могут встречаться в элементах URL только как шестнадцатеричные коды -- все символы, кроме букв латинского алфавита, цифр и символов "." и "-", а некоторые не могут встречаться вообще: "\", "#", "*", "@", "\%", "?", ":", ",", а также символы с ASCII-кодом меньше \%20. Символ "/" может встречаться в элементах URL только в пути для разделения входящих в него каталогов. Имя файла не может состоять только из точек. Рассмотрим примеры URL: http://neerc.ifmo.ru/school ftp://somewhere.net:1234/pub/files/coolgame.zip nobody.nowhere.net/some\%20dir/some\%20file#some\%20info Ваша цель в этой задаче -- помочь разработчикам web-сервера. Для web-сервера отсутствующие части URL имеют следующие значения по умолчанию: Различные как строки URL могут указывать на один и тот же ресурс, например следующие три URL: neerc.ifmo.ru http://neerc.ifmo.ru:80/index.html# Http://NEERC.IFMO.Ru/Dir/../././ Для разграничения доступа к ресурсам необходимо уметь определять, указывают ли два различных URL на один и тот же ресурс. Помогите разработчикам написать соответствующую проверку. \InputFile Входной файл состоит из двух строк, каждая из них содержит URL. Оба URL удовлетворяют формату, приведенному в условии этой задачи. Длина каждого URL не превосходит 200 символов. Гарантируется, что ни один из промежуточных каталогов на пути к ресурсу не лежит выше корневого каталога (т.е. не может встретиться, например, URL http://somewhere.com/../dir/index.html) а также, что имена всех каталогов состоят по крайней мере из одного символа (два символа "/" не могут идти подряд в любом месте, кроме как непосредственно после двоеточия после имени протокола). \OutputFile Выведите \textbf{YES} в выходной файл, если оба URL, приведенные во входном файле, указывают на один и тот же ресурс и \textbf{NO} в противном случае.
Time limit 1 second
Memory limit 64 MiB
Input example #1
neerc.ifmo.ru
neerc.ifmo.ru:80
Output example #1
YES