#S0018. 环路配色(palette)
环路配色(palette)
题目描述
环形展台上有 个位置,依次编号为 。有些位置已经上色,其余位置尚未上色。共有 种可用颜色,颜色 的单点价值为 。你需要为每个未上色的位置选择一种可用颜色,已经上色的位置不能改变。
完成配色后,对于 的每个正因数 和每个整数 ,分别考察位置集合
若集合内所有位置的颜色相同,设其颜色为 ,则该集合的得分为 ;否则得分为 。将上述所有集合的得分相加,得到总分。
已知 是某个质数的非负整数次幂,允许 。求可以获得的最大总分。
输入格式
第一行包含一个整数 。第二行包含一个长度为 的字符串,依次描述位置 至 的颜色:大写字母表示已有颜色,? 表示未上色。
第三行包含一个整数 。接下来 行,每行包含一个大写字母 和一个整数 ,表示一种可用颜色及其单点价值。这 个字母互不相同。
输出格式
输出一行一个整数,表示完成配色后可以获得的最大总分。
样例输入 1
4
A?A?
2
A 3
B 8
样例输出 1
44
样例 1 解释
一种最优配色为 ABAB。 时,四个单点集合共得 分; 时,两个集合共得 分; 时,整个环不同色,得 分。总分为 。
样例输入 2
1
?
2
A 7
B 4
样例输出 2
7
样例 2 解释
只有一个位置,也只有一个计分集合。将它涂成 A,可获得 分。
数据范围与子任务
对于所有测试数据,保证, 为质数的非负整数次幂;,。初始出现的每种颜色都在可用颜色表中。
每个子任务内的正式测试全部通过,才获得该子任务的分数。
| 子任务编号 | 分值 | 额外限制 |
|---|---|---|
| 1 | 20 | ,颜色数 |
| 2 | ||
| 3 | 初始没有问号 | |
| 4 | 40 | 无额外限制 |