eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Арбитраж

Арбитраж

Арбитраж - это использование расхождений в валютных курсах, благодаря которому в результате обмена можно преобразовать одну единицу валюты в более чем одну единицу этой же валюты. Например, пусть \textbf{1} доллар США стоит \textbf{0.5} британских фунтов, \textbf{1} Британский фунт стоит \textbf{10.0 }французских франков, а \textbf{1} французский франк стоит \textbf{0.21} долларов США. Тогда при обмене валюты умный трейдер может за \textbf{1} доллар США приобрести \textbf{0.5 * 10.0 * 0.21 = 1.05} долларов США, получив прибыль в \textbf{5} процентов. Напишите программу, которая по списку курсов валют определит, возможен ли арбитраж или нет. \InputFile Входные данные состоят из одного или нескольких тестов. Первая строка каждого теста содержит количество разных валют \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{30}). Каждая из следующих \textbf{n} строк содержит название валюты. Название не содержит внутри себя пробелов. В следующей строке задается размер \textbf{m} таблицы, следующей далее. Каждая из следующих \textbf{m }строк содержит название \textbf{c_i} исходной валюты, действительное число \textbf{r_ij} задающее обменный курс от \textbf{c_i} к \textbf{c_j} и название \textbf{c_j} валюты, в которую производится обмен. Обмен, не указанный в таблице, считается невозможным. Тесты разделены друг от друга пустой строкой. Признак конца входных данных - значение \textbf{0} для \textbf{n}. \OutputFile Для каждого теста вывести в отдельной строке возможен ли арбитраж в формате "\textbf{Case i: Yes}" или "\textbf{Case i: No}", где \textbf{i} - номер теста.
Лимит времени 1 секунда
Лимит использования памяти 64 MiB
Входные данные #1
3
USDollar
BritishPound
FrenchFranc
3
USDollar 0.5 BritishPound
BritishPound 10.0 FrenchFranc
FrenchFranc 0.21 USDollar

3
USDollar
BritishPound
FrenchFranc
6
USDollar 0.5 BritishPound
USDollar 4.9 FrenchFranc
BritishPound 10.0 FrenchFranc
BritishPound 1.99 USDollar
FrenchFranc 0.09 BritishPound
FrenchFranc 0.19 USDollar

0
Выходные данные #1
Case 1: Yes
Case 2: No