Zero
Национална Олимпиада по Информатика 2011, Контролно 1
Time Limit: 1s, Memory Limit: 256MiB
По време на женските партита на Ели и нейните приятелки се случва те да играят най-различни игри, често свързани с алкохол (което е вредно и вие, като по-разумни хора, не бива да правите!).

Една от игрите е следната: пет момичета се нареждат в кръг и всяка от тях си намисля по едно число между едно и тридесет хиляди. След това, ако две момичета, седящи едно до друго, имат нечетни числа, те могат да извадят от тях по едно и да пият шотче Бейлис. Другата възможност в играта е две момичета, отново седящти едно до друго, които имат произволни ненулеви числа (включително две нечетни), могат да ги разделят целочислено на 2 (игнорирайки остатъка) и да пият шотче Ром. Само една двойка момичета могат да пият на всеки рунд. Крайната цел на играта е числата и на петте момичета да станат равни на нула (и съответно те да са значително пияни, за да могат спокойно да започнат да обсъждат момчетата от класа).

Тъй като Ели не намира особен смисъл в играта, тя си записва на кой рунд коя двойка момичета са пили и какво. Нашата героиня се пита колко възможни последователности могат да се получат (тоест по колко възможни начина могат да изберат момичетата реда, в който пият, и какво) така, че накрая всички да останат с числа, равни на нула. Помогнете й, като напишете програма, която по зададени началните числа на момичетата определя по колко възможни начини може да протече играта.
Вход
На единствен ред на стандартния вход ще бъдат зададени пет цели числа A1, A2, A3, A4, A5, разделени с интервали – началните числа на всяко от момичетата.
Изход
Изведете на стандартния изход броя възможни последователности от числа, които Ели би могла да си запише. Ако при никоя последователност не може да се достигнат пет нули, изпечатайте 0. Тъй като възможният резултат би могъл да бъде много голям, изведете само остатъка му при деление на 1,000,000,007.
Ограничения
  • 1 ≤ Ai ≤ 30,000
Примерен Вход Примерен Изход
2 3 6 1 110
1 2 2 1 10
3 4 5 1 4240
6989 9367 6809 5635 439042424222
В първия пример една от възможните последователности е (3, 4) да пият Rum, после (5, 1) да пият Rum, после (1, 2) да пият Baileys, после (2, 3) да пият Rum, и накрая (2, 3) да пият Rum. Забележете, че на последната стъпка (2, 3) могат да пият Baileys, което дава друга последвателност от 10-те в отговора. Във втория пример по какъвто и начин да пият момичетата, накрая все едно от тях ще остане с 1, а другите ще са с нула.
Мрън!