QOJ.ac

QOJ

时间限制: 1 s 内存限制: 1024 MB 总分: 100

#1826. 圣骑士

统计

圣骑士(Paladin)是一位精通神圣魔法的战士,他需要你的帮助来构建咒语。作为一名圣骑士,每一个咒语都必须是一个回文串,这意味着咒语正读和反读都是一样的。构建新咒语的代价基于咒语中出现的符文对(相邻字母)的代价。输入中未给出的符文对不允许出现在最终的咒语中。

咒语的总代价是咒语中所有符文对代价的总和,每出现一次符文对就计算一次其代价。例如,如果咒语是 abacaba,那么代价就是 ab + ba + ac + ca + ab + ba 的代价之和。

请确定构建一个长度恰好为 $k$ 的新圣骑士咒语的最小代价。

输入格式

第一行包含两个整数 $n$ ($1 \le n \le 676$) 和 $k$ ($2 \le k \le 100$),其中 $n$ 是符文对的数量,$k$ 是所需的咒语长度(即字母数量)。

接下来的 $n$ 行,每行包含一个字符串 $s$($s$ 由恰好两个小写字母组成,这两个字母可以相同也可以不同)和一个整数 $c$ ($1 \le c \le 100$),其中 $s$ 是一个符文对,$c$ 是该符文对的代价。所有符文对各不相同。

输出格式

输出一个整数,表示构建长度为 $k$ 的咒语的最小代价;如果无法构建,则输出 $-1$。

样例

样例输入 1

5 9
ab 4
ba 1
bd 3
db 100
bc 4

样例输出 1

20

Discussions

About Discussions

The discussion section is only for posting: General Discussions (problem-solving strategies, alternative approaches), and Off-topic conversations.

This is NOT for reporting issues! If you want to report bugs or errors, please use the Issues section below.

Open Discussions 0
No discussions in this category.

Issues

About Issues

If you find any issues with the problem (statement, scoring, time/memory limits, test cases, etc.), you may submit an issue here. A problem moderator will review your issue.

Guidelines:

  1. This is not a place to publish discussions, editorials, or requests to debug your code. Issues are only visible to you and problem moderators.
  2. Do not submit duplicated issues.
  3. Issues must be filed in English or Chinese only.
Active Issues 0
No issues in this category.
Closed/Resolved Issues 0
No issues in this category.