304053: CF778E. Selling Numbers

Memory Limit:512 MB Time Limit:2 S
Judge Style:Text Compare Creator:
Submit:0 Solved:0

Description

Selling Numbers

题意翻译

有一个待定的数字 $A$,用字符串表示,包括了 `?,0~9`,将所有 `?` 替换成数字 `0~9` 后形成一个数。不能有前导零,也不能为 $0$。 然后又给定一个长为 $n$ 的数列 $\{B\}$,第 $i$ 个用 $B_i$ 来表示。$|A|\le 1000,1\le B_i\le 10^{1000}$。 一个数字的价值是其各位数码价值相加,`0~9` 的价值分别是 $c_0,\dots,c_9$。一个数列的价值是所有数字的价值之和。 对于所有可能的 $A$,请求出序列 $\{B\}$ 中每个元素加上 $A$ 之后得到的序列的最大价值。 transla by [_MoonPie_](https://www.luogu.com.cn/user/95246)

题目描述

Boris really likes numbers and even owns a small shop selling interesting numbers. He has $ n $ decimal numbers $ B_{i} $ . Cost of the number in his shop is equal to the sum of costs of its digits. You are given the values $ c_{d} $ , where $ c_{d} $ is the cost of the digit $ d $ . Of course, Boris is interested in that numbers he owns have the maximum cost possible. Recently Boris got hold of the magical artifact $ A $ , which can allow him to increase the cost of his collection. Artifact is a string, consisting of digits and '?' symbols. To use the artifact, Boris must replace all '?' with digits to get a decimal number without leading zeros (it is also not allowed to get number 0). After that, the resulting number is added to all numbers $ B_{i} $ in Boris' collection. He uses the artifact exactly once. What is the maximum cost of the collection Boris can achieve after using the artifact?

输入输出格式

输入格式


First line contains artifact $ A $ , consisting of digits '0'–'9' and '?' symbols ( $ 1<=|A|<=1000 $ ). Next line contains $ n $ — the amount of numbers in Boris' collection ( $ 1<=n<=1000 $ ). Next $ n $ lines contain integers $ B_{i} $ ( $ 1<=B_{i}&lt;10^{1000} $ ). $ A $ doesn't start with '0'. Last line contains ten integers — costs of digits $ c_{0},c_{1},...,c_{9} $ ( $ 0<=c_{i}<=1000 $ ).

输出格式


Output one integer — the maximum possible cost of the collection after using the artifact.

输入输出样例

输入样例 #1

42
3
89
1
958
0 0 1 1 2 2 3 3 4 4

输出样例 #1

4

输入样例 #2

?5?
4
2203
5229
276
6243
2 1 6 1 1 2 5 2 2 3

输出样例 #2

62

说明

In the second sample input, the optimal way is to compose the number 453. After adding this number, Boris will have numbers 2656, 5682, 729 and 6696. The total cost of all digits in them is equal to $ 18+15+11+18=62 $ .

Input

题意翻译

有一个待定的数字 $A$,用字符串表示,包括了 `?,0~9`,将所有 `?` 替换成数字 `0~9` 后形成一个数。不能有前导零,也不能为 $0$。 然后又给定一个长为 $n$ 的数列 $\{B\}$,第 $i$ 个用 $B_i$ 来表示。$|A|\le 1000,1\le B_i\le 10^{1000}$。 一个数字的价值是其各位数码价值相加,`0~9` 的价值分别是 $c_0,\dots,c_9$。一个数列的价值是所有数字的价值之和。 对于所有可能的 $A$,请求出序列 $\{B\}$ 中每个元素加上 $A$ 之后得到的序列的最大价值。 transla by [_MoonPie_](https://www.luogu.com.cn/user/95246)

加入题单

上一题 下一题 算法标签: