Preparando MOJI

Long Number

2000ms 262144K

Description:

You are given a long decimal number $$$a$$$ consisting of $$$n$$$ digits from $$$1$$$ to $$$9$$$. You also have a function $$$f$$$ that maps every digit from $$$1$$$ to $$$9$$$ to some (possibly the same) digit from $$$1$$$ to $$$9$$$.

You can perform the following operation no more than once: choose a non-empty contiguous subsegment of digits in $$$a$$$, and replace each digit $$$x$$$ from this segment with $$$f(x)$$$. For example, if $$$a = 1337$$$, $$$f(1) = 1$$$, $$$f(3) = 5$$$, $$$f(7) = 3$$$, and you choose the segment consisting of three rightmost digits, you get $$$1553$$$ as the result.

What is the maximum possible number you can obtain applying this operation no more than once?

Input:

The first line contains one integer $$$n$$$ ($$$1 \le n \le 2 \cdot 10^5$$$) — the number of digits in $$$a$$$.

The second line contains a string of $$$n$$$ characters, denoting the number $$$a$$$. Each character is a decimal digit from $$$1$$$ to $$$9$$$.

The third line contains exactly $$$9$$$ integers $$$f(1)$$$, $$$f(2)$$$, ..., $$$f(9)$$$ ($$$1 \le f(i) \le 9$$$).

Output:

Print the maximum number you can get after applying the operation described in the statement no more than once.

Sample Input:

4
1337
1 2 5 4 6 6 3 1 9

Sample Output:

1557

Sample Input:

5
11111
9 8 7 6 5 4 3 2 1

Sample Output:

99999

Sample Input:

2
33
1 1 1 1 1 1 1 1 1

Sample Output:

33

Informação

Codeforces

Provedor Codeforces

Código CF1157B

Tags

greedy

Submetido 0

BOUA! 0

Taxa de BOUA's 0%

Datas 09/05/2023 09:47:27

Relacionados

Nada ainda