`Всеукраїнський центр проведення олімпіад в мережі Інтернет

Задача MSLPRIM.  Есть прямоугольная таблица размером N строк на М столбиков. В каждой клеточке записано целое число. По ней нужно пройти сверху вниз, начиная с любой клетки верхней строки, дальше каждый раз, переходя в одну из "нижних соседних" клеток   (иными словами, из клетки с номером (i, j) можно перейти или на (i + 1, j - 1), или на (i + 1, j), или на (i + 1, j + 1) В случае j = М последний из трех описанных вариантов становится невозможным, а в случае j  = 1 - первый) и закончить маршрут в какой-либо клетке нижней строки.

Напишите программу, которая будет находить максимально возможную счастливую сумму значений пройденных клеток среди всех допустимых путей. Всем известно, что счастливыми являются натуральные числа, в десятичной записи которых содержатся только счастливые цифры 4 и 7. Например, числа 47, 744, 4 является счастливыми, а 0, 5, 17, 467  такими не является. Обратите внимание, что счастливой должна быть именно сумма, а не отдельные слагаемые.

Технические условия. Программа MSLPRIM читает с устройства стандартного ввода через пробел числа N и M (1<=N,M<=77),  далее  з каждой из последующих  N строк по M разделенных пробелом целых неотрицательных чисел (каждое не превышает 77) – значения клеток таблицы. Программа выводит на устройство стандартного вывода единственное натуральное число – максимальную счастливую сумму либо -1, если среди маршрутов нет ни одного со счастливой суммой.

Пример

Ввод

3 4

8 2 10 4

22 2 15 25

1 14 9 1

Вывод

44

© LIKT 1998-2024