【问题描述】
直接说题目吧,题目背景懒得想了。。。
给定一个数字a,a包含n个1到9的数字,f数组给出9个可供替换的数字,可将数字i替换成f[i]。允许你进行如下操作:选择a的一段连续子序列,使得这块连续子序列中的每一个数字i都用f数组中的f[i]替代.,该操作最多只能进行一次。例如: a = 1337,且f[1] = 1, f[3] = 5, f[7] = 3。此时a的最大数字为1557(将33变成55)。求经过该操作后数字a可变成的最大数字是多少?
【输入形式】
第一行给出一个n (1 <= n <= 200000),代表数字a是个n位数。
第二行给出数字a。
第三行给出9个数,代表f[1], f[2]…f[9](1 <= f[i] <= 9).
【输出形式】
输出数字a经过最多一次操作后的最大数。
【样例输入1】
4 1337 1 2 5 4 6 6 3 1 9
【样例输出1】
1557
【样例输入2】
5 11111 9 8 7 6 5 4 3 2 1
【样例输出2】
99999
【样例输入3】
2 33 1 1 1 1 1 1 1 1 1
【样例输出3】
33
难度等级: | 0 |
总通过次数: | 15 |
总提交次数: | 240 |