---> 1657 задач <---
Источники
    Личные олимпиады(938 задач)
    Командные олимпиады(684 задач)
Страница: << 222 223 224 225 226 227 228 >> Отображать по:
ограничение по времени на тест
2.0 second;
ограничение по памяти на тест
64 megabytes

Алхимики Средневековья владели знаниями о превращении различных химических веществ друг в друга. Это подтверждают и недавние исследования археологов. В ходе археологических раскопок было обнаружено m глиняных табличек, каждая из которых была покрыта непонятными на первый взгляд символами. В результате расшифровки выяснилось, что каждая из табличек описывает одну алхимическую реакцию, которую умели проводить алхимики. Результатом алхимической реакции является превращение одного вещества в другое. Заданы набор алхимических реакций, описанных на найденных глиняных табличках, исходное вещество и требуемое вещество. Необходимо выяснить, возможно ли преобразовать исходное вещество в требуемое с помощью этого набора реакций, а в случае положительного ответа на этот вопрос — найти минимальное количество реакций, необходимое для осуществления такого преобразования.

Входные данные

Первая строка входного файла содержит целое число \(m\) (\(0 \leq m \leq 1000\)) — количество записей в книге. Каждая из последующих \(m\) строк описывает одну алхимическую реакцию и имеет формат вещество1->вещество2, где вещество1 — название исходного вещества, вещество2 — название продукта алхимической реакции. m+2-ая строка входного файла содержит название вещества, которое имеется исходно, m+3-ая — название вещества, которое требуется получить. Во входном файле упоминается не более 100 различных веществ. Название каждого из веществ состоит из строчных и заглавных латинских букв и имеет длину не более 20 символов. Строчные и заглавные буквы различаются.

Выходные данные

В выходной файл выведите минимальное количество алхимических реакций, которое требуется для получения требуемого вещества из исходного, или -1, если требуемое вещество невозможно получить.

Примеры
Входные данные
5
Aqua -> AquaVita
AquaVita -> PhilosopherStone
AquaVita -> Argentum
Argentum -> Aurum
AquaVita -> Aurum
Aqua
Aurum
Выходные данные
2
Входные данные
5
Aqua -> AquaVita
AquaVita -> PhilosopherStone
AquaVita -> Argentum
Argentum -> Aurum
AquaVita -> Aurum
Aqua
Osmium
Выходные данные
-1
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Вам дано описание дорожной сети страны. Ваша задача – найти среднюю длину кратчайшего пути между двумя городами. Средней длиной называется отношение суммы по всем парам городов (\(a\), \(b\)) длин кратчайших путей \(l_{a,b}\) из города \(a\) в город \(b\) к числу таких пар. Здесь \(a\) и \(b\) – различные натуральные числа в диапазоне от 1 до \(N\), где \(N\) – общее число городов в стране. Следует учитывать только такие пары городов, между которыми есть кратчайший путь.

Входные данные

Сеть дорог задана во входном файле следующим образом: первая строка содержит числа \(N\) и \(K\) (\(1 \leq N \leq 100, 1 \leq K \leq N(N-1)\)), где \(К\) – количество дорог. Каждая из следующих \(K\) строк содержит описание дороги с односторонним движением – три целых числа \(a_i\), \(b_i\) и \(l_i\) (\(1 \leq a_i,b_i \leq N\), \(1 \leq l_i \leq 1000\)). Это означает, что имеется дорога длины \(l_i\), которая ведет из города \(a_i\) в город \(b_i\).

Выходные данные

Вы должны вывести в выходной файл единственное вещественное число – среднее расстояние между городами. Расстояние должно быть выведено с 6 знаками после десятичной точки.

Примеры
Входные данные
6 4
1 2 7
3 4 8
4 5 1
4 3 100
Выходные данные
25.000000
ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

Имеется бесконечное количество прямоугольных кирпичей размерами \(x_i \times y_i \times z_i\), каждый из которых можно ставить на любую грань (размеры каких-то двух стороны будут размерами основания, размер третьей стороны – высотой). Ваша задача – написать программу, находящую максимальную высоту башни, которую можно построить из этих кирпичей. Один кирпич может быть поставлен на другой, если размеры основания верхнего кирпича строго меньше соответствующих размеров основания нижнего.

Входные данные

В первой и единственной строке входного файла записано целое число \(N\) (\(1 \leq N \leq 30\)) – количество типов кирпичей, за которым следуют \(3\times N\) целых чисел (\(N\) троек \(x_i\), \(y_i\), \(z_i\)) описывающих размеры каждого типа кирпичей (\(1 \leq x_i, y_i, z_i \leq 65000\)).

Выходные данные

Выведите в выходной файл единственное целое число - максимальную высоту башни.

Примеры тестов

Входные данные
1 10 20 30
 
Выходные данные
40
 
Входные данные
2 6 8 10 5 5 5
 
Выходные данные
21
 

ограничение по времени на тест
1.0 second;
ограничение по памяти на тест
64 megabytes

На листке записано в одну строку \(N\) (\(2 \leq N \leq 100\)) целых положительных чисел. Каждое число не превышает 200. Играют двое. За каждый ход можно зачеркивать крайнее число либо слева, либо справа. Зачеркнутое число добавляется к очкам игрока. \(N\) – четное. Игру начинает первый игрок. Необходимо вывести максимально возможную сумму очков для первого игрока при условии, что противник играет наилучшим образом..

Входные данные

В первой строке входного файла содержится одно целое число \(N\) (\(2 \leq N \leq 100\)). В следующих \(N\) строках записан исходный ряд чисел, по одному числу в строке.

Выходные данные

Выходной файл должен содержать единственное число – максимально возможную сумму очков для первого игрока при наилучшей игре второго игрока.

Примеры
Входные данные
6
4
7
2
9
5
2

Выходные данные
18
ограничение по времени на тест
3.0 second;
ограничение по памяти на тест
64 megabytes

Правительство некоторой всем известной страны решило глобально перестроить дорожную систему – оно уже успело разрушить все дороги, и теперь нужно выстроить дорожную сеть заново. Новые двусторонние дороги можно строить между любыми двумя городами, и стоимость постройки дороги равна расстоянию между соответствующими городами (здесь понимается расстояние между точками на плоскости). Однако в некоторых случаях ландшафт вынуждает построить дорогу за другую цену, такие пары городов называются особыми. Правительство решило первым делом соединить два главных города данной страны – А и Б. Вам поручили разработать план постройки дорог, при котором суммарная стоимость всех построенных дорог будет минимально возможной, и при этом по построенным дорогам можно будет добраться из города А в город Б.

Входные данные

Первая строка содержит число \(N\) – количество городов в стране (\(1 \leq N \leq 10^4\)). Каждая из последующих \(N\) строк содержит по два целых числа, \(x_i\) и \(y_i\) – координаты соответствующего города (\(|x_i|, |y_i| \leq 10^6\)). Далее содержится число \(M\) – количество особых пар городов (\(0 \leq M \leq min(10^4, N(N-1)/2)\)). Далее в \(M\) строках содержится описание особых дорог, каждое состоит из трех целых чисел: \(u\), \(v\) – пара различных городов, между которыми проходит особая дорога, и \(w\) – стоимости постройки соответствующей дороги (\(1 \leq u, v \leq N\), \(0 \leq w \leq 10^6\)). В последней строке содержатся номера городов А и Б (от 1 до \(N\)).

Выходные данные

Выведите одно число – искомую минимальную длину. Ваш ответ должен отличаться от правильного не более чем на \(10^{-5}\).

Примеры
Входные данные
4
1 1
0 0
1 0
0 1
1
1 2 100
2 1
Выходные данные
2.0000000000

Страница: << 222 223 224 225 226 227 228 >> Отображать по:
Выбрано
:
Отменить
|
Добавить в контест