Биатлон
Практически все биатлонные трансляции из Ванкувера начинались непосредственно перед стартом гонки. Редко можно было увидеть, какие подготовительные мероприятия проводятся до старта. Например, в одном пункте проверки у спортсменов проверяют лыжное снаряжение, в другом - винтовку и т.д. Всего имеется N таких пунктов проверки. Было установлено, что всех биатлонистов можно разделить на 10 типов в зависимости от того, сколько времени они проводят в пунктах проверки. По этой информации известные спортивные ученые вычислили матрицу латентности размера N*10 – времени задержки каждого типа в каждом пункте проверки.
Состав из K спортсменов в соответствии с их стартовыми номерами последовательно проходит проверку в каждом из пунктов. Первый атлет начинает проходить проверку в первом пункте в момент времени 0. Как только биатлонист покидает пункт i, он перемещается в очередь на проверку в пункте i+1. Как только пункт j свободен, из очереди в него попадает спортсмен (если он там есть).
Необходимо найти время, за которое все спортсмены полностью пройдут проверку.
Входные данные
В первой строке записаны числа N и K (1 ≤ N ≤ 1000, 1 ≤ K ≤ 10000). Далее записана строка, состоящая из K цифр без пробелов – описание состава спортсменов. Цифра определяет тип атлета. В последующих N строках записаны по 10 положительных чисел, не превышающих 10000 – матрица латентности. i-ая строка описывает время, проведенное в пункте проверки с номером i, для биатлониста типа 0, 1, 2 и т.д.
Выходные данные
Необходимо вывести единственное число – общее время проверки.