Странный вычислитель Имя входного файла: input.txt
Имя выходного файла: output.txt
Ограничение по времени: 1 секунда
Ограничение по памяти: 256 мегабайт
Маленькая девочка Лиза нашла странный автомат для счета. Он состоит из клеток, которые
соединены друг с другом проводками, концы которых помечены символами − и +. В каждой клетке
автомата написано либо число, либо операция, либо переменная. В инструкции к автомату она
прочитала, что данные передаются по проводкам от клетки с минусом к клетке с плюсом. В этом
случае будем говорить, что клетка с плюсом зависит от клетки с минусом.
Работает устройство следующим образом:
• результатом вычисления в клетке, которая не помечена ни одним плюсом, является значение,
записанное в неё;
• для всех клеток устройства, сначала вычисляются значения в клетках, от которых зависит
результат вычисления в этой клетке, после чего выполняется операция последовательно для
всех входных данных;
• результат, полученный в клетке с номером 1, является итоговым.
Если в клетке записана операция, то результат ее вычисления зависит от результата не менее
двух других клеток. Если в клетке записана переменная или константа, то она не зависит от результата других клеток. Гарантируется, что существует не более одной клетки с переменной и для
любой клетки с умножением существует не более одной цепочки зависимостей из клетки с переменной. Вычисление всегда завершается.
Лиза решила убедиться в корректности работы вычислителя. Для этого она написала набор
чисел — значений x. Для каждого из этих значений она хочет узнать результат, который должно
выдать устройство ей с проверкой.
Формат входных данных
В первой строке входного файла записаны три числа N, M, и Q — количество клеток, количество
зависимостей и количество значений переменной (1 ⩽ N, M, Q ⩽ 105
).
Во второй строке записаны N выражений в порядке, соответствующем номерам клеток, в которых эти выражения записаны:
• + означает, что результат в соответствующей клетке равен сумме значений от которых эта
клетка зависит;
• ∗ означает, что результат в соответствующей клетке равен произведению значений в клетках,
от которых данная клетка зависит;
• x означает, что в данной клетке записывается переменная;
• val означает, что в соответствующей клетке записана константа val (1 ⩽ val ⩽ 109 + 8).
В следующих M строках записано по два числа u и v — зависимость клетки v от значения в
клетке u (1 ⩽ u, v ⩽ N, u ̸= v).
В следующих Q строках записаны значения переменной x (0 ⩽ x ⩽ 109 + 8).
Формат выходных данных
В выходной файл выведите Q строк, в каждой из которых по одному числу — результат, полученный на вычислителе для очередного значения x. Так как результат может быть большим,
выведите остаток от деления на 109 + 9.
180
383
Ответы на вопрос:
Популярно: Информатика
-
Winxsori18.12.2021 06:51
-
Spokeup02.03.2021 02:27
-
tikatS6613.02.2023 01:55
-
Вика31038725.10.2022 18:33
-
cvetaharlanova506.05.2023 13:58
-
lizzili20.02.2020 04:17
-
molinarudmanp01g0011.03.2020 05:13
-
LYUBASHA8328.08.2020 17:17
-
KarinaKotik1103.03.2023 10:02
-
illia200618.05.2022 06:40