Показать сообщение отдельно
Старый 07.12.2012, 13:55   #4 (permalink)
gazon
Member
 
Регистрация: 21.11.2011
Сообщений: 56
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Известная на весь Могилев компания "Headache" выпустила игру, для которой необходима конструкция, состоящая из маленьких платформ и труб. Платформы разделяются на стартовые (их N1 штук), финишные (N3 штук) и промежуточные (N2 штук). Все стартовые платформы находятся на одинаковой высоте. Финишные платформы также находятся на одинаковой высоте. Все высоты промежуточных платформ различны. Они меньше высоты стартовых, но больше высоты финишных. Каждой платформе соответствует уникальный номер от 1 до N1+N2+N3. Нумерация следующая: сначала все стартовые платформы, затем промежуточные и, наконец, финишные. Все промежуточные платформы пронумерованы по убыванию высоты. То есть, если номер промежуточной платформы A меньше номера платформы B, то высота A больше высоты B.
На каждой из стартовых платформ находится шарик. Шарик может скатиться с платформы A на платформу B, если они соединены трубой, и высота A больше высоты B. На каждой из финишных платформ может оказаться не более одного шарика. Если шарик находится на некоторой платформе, то игрок может выбрать направление дальнейшего пути шарика, т.е. выбрать платформу, на которую шарик скатится. Также для каждой промежуточной платформы задано число C, равное максимальному количеству шариков, которые могут прокатиться по ней за время игры. Цель игры заключается в том, чтобы на финишных платформах оказалось как можно больше шариков.
Вам нужно узнать, какое максимальное количество шариков может оказаться на финишных платформах в результате игры.

Ввод
Во входном файле input.in находятся информация о конструкции в следующей форме:

N1 N2 N3
CN1+1
...
CN1+N2
K1 A[1,1] ... A[1,K1]
K2 A[2,1] ... A[2,K2]
...
KN1+N2 A[N1+N2,1] ... A[N1+N2,KN1+N2]
где числа N1, N2, N3 - соответственно количество стартовых, промежуточных и финишных платформ. Cj - максимальное количество шариков, которые могут прокатиться по промежуточной платформе с номером j (N1+1 <= j <= N1+N2) за все время игры. Кi - количество труб, выходящих из платформы с номером i (1 <= i <= N1+N2). Элементы массива A, перечисленные в строке, являются номерами платформ, на которые может скатиться шарик с соответствующей платформы.

Ограничения
Все числа на вводе целые.
0<N1,N3<51
1<N1+N2+N3<201
0 <= Cj <= 50
Не существует труб между стартовыми платформами.
Не существует труб между финишными платформами.

Вывод
В первой строке выходного файла output.out должно находиться единственное число, равное максимальному количеству шариков, которое может оказаться на финишных платформах в результате игры.
gazon вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070