#G0125. 构造字符串【2025模拟赛T5】
构造字符串【2025模拟赛T5】
题目描述
给定一个仅由小写字母构成的字符串 ,以及一个长度为 的数组 ,其中 表示第 个字母( 表示字母 、 表示字母 、……、 表示字母 的数量。
你需要使用 中的字符重新拼接出尽可能多的字符串,要求每个新字符串的字典序必须严格大于 ( 中的字符可以不用完)。
请计算最多能构造多少个这样的字符串。不要求互不相同,计数按构造的个数累加。
【名词解释】
字符串的字典序比较:从左到右逐个比较两个字符串的字符。如果在某个位置上字符不同,比较这两个字符的字母表顺序,字母序大的字符串字典序也大。如果一直比较到其中一个字符串结束,则较短的字符串字典序更小。
输入格式
第一行输入一个长度为 的字符串 。
第二行输入 个整数 ${\rm cnt}_0,{\rm cnt}_1,\dots,{\rm cnt}_{25} \left(0 \leq {\rm cnt}_i \leq 10^9\right)$,代表每个字符还剩下多少个。
输出格式
输出一个整数,代表答案。
dcb
1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
2
fedcb
2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
42
样例解释
在第一组样例中,给了 、、、、 字符各一个,可以构造出 和 两个字典序严格大于 的字符串。
数据规模与约定
下发文件对应子任务 。
有合理的子任务依赖。

对于 的数据:保证 。保证 之和不超过 。