아직 만들고 있는 페이지입니다.

이 페이지는 아직 만드는 중입니다. 보이는 내용은 바뀔 수 있습니다.

Родные просторы

시간 제한1초메모리 제한1024 MB

요약
문자열과 k×k 삭제 허용 표가 주어질 때, 허용된 삭제만으로 만들 수 있는 문자열 중 사전순으로 가장 작은 문자열을 구한다.
난이도

보통10점 중 7점

유형
동적 계획법, 문자열, 그리디
정답자
아직 제출이 없습니다

문제

Вы играете на смартфоне в игру <<Родные просторы>>, в которой управляющий Остап помогает помещику восстановить отцовский дом. Игра происходит следующим образом. 

Дана последовательность из nn кристаллов, расположенных в один ряд слева направо. Каждый кристалл относится к одному из kk видов, обозначенных первыми kk английскими буквами. Таким образом, последовательность кристаллов записывается строкой английских букв.

За один ход игры можно удалить из последовательности один кристалл. Цель игрока --- получить в результате применения разрешенных видов удалений лексикографически минимально возможную строку.

Разрешённые виды удаления кристаллов заданы таблицей AA размера k×kk\times k из нулей и единиц. Если A_ij=1A\_{ij}=1, то разрешается удалить кристалл вида jj, если непосредственно слева от него находится кристалл вида ii. Данные действия можно выполнять в любом порядке.

Напомним, что строка xx лексикографически меньше строки yy, если выполнено одно из двух условий:

  • существует такая позиция символа mm, присутствующая в обеих строках, что до mm-го символа строки совпадают, а mm-й символ строки xx меньше mm-го символа yy,
  • строка xx является строгим префиксом yy (то есть получается отбрасыванием одного или больше символов с конца строки yy).

입력

В первой строке даны два целых числа kk и nn (1≤k≤261 \le k \le 26, 1≤n≤500,0001 \le n \le 500\\,000) --- количество видов кристаллов и длина исходной последовательности кристаллов.

В следующих kk строках задана таблица AA, ii-я строка содержит ровно kk символов 00 или 11. Символ в ii-й строке на jj-й позиции равен A_ijA\_{ij}.

В последней строке записаны nn строчных английских букв, задающие исходную последовательность кристаллов. Гарантируется, что в строке встречаются только первые kk букв английского алфавита, ii-я по счёту буква английского алфавита обозначает ii-й вид кристаллов.

출력

Выведите лексикографически минимальную строку, которую можно получить из исходной строки разрешёнными действиям.

제한

  • n≤500,000n \le 500\\,000
  • k≤26k \le 26

힌트

В примерах из условия разрешены следующие виды удалений (удаляемый символ зачёркнут, символ непосредственно перед ним подчёркнут): ab, bc, ca.

Возможная последовательность удалений в первом примере:

  • abacaba
  • abacaba
  • abacaa
  • abacaa
  • abaca
  • abaca
  • abac
  • abac
  • aac

Возможная последовательность удалений во втором примере:

  • bcacb
  • bcacb
  • bacb

예제2

  1. 예제 1

    입력
    3 7
    010
    001
    100
    abacaba
    
    예상 출력
    aac
    
  2. 예제 2

    입력
    3 5
    010
    001
    100
    bcacb
    
    예상 출력
    bacb