#P11202. [JOIG 2024] 名前 / Name

    ID: 10752 远端评测题 1000ms 1024MiB 尝试: 0 已通过: 0 难度: 7 上传者: 标签>动态规划 DP2024O2优化广度优先搜索 BFSJOI(日本)

[JOIG 2024] 名前 / Name

Description

JOI 君和 IOI 君决定养一只狗。经过讨论,他们决定给狗取一个满足以下所有条件的名字:

  1. 名字必须仅包含大写字母和小写字母;
  2. JOI 君最喜欢的字符串是长度为 NN 的字符串 SS,名字必须包含 SS 作为子序列;
  3. IOI 君最喜欢的字符串是长度为 MM 的字符串 TT,名字必须包含 TT 作为子序列;
  4. 名字中任意两个相同的字符之间必须间隔至少 KK 个其他字符。

以上的所有条件区分大小写,例如,我们将 Aa 视为不同的字符。

一个字符串的子序列定义为删除其中若干个字符(可以为 00 个)形成的字符串。例如该字符串为 algorithm,那么 ailgtm 是它的子序列,而 joilogarithm 不是。

由于他们都认为名称越短越好,所以他们决定选用满足上述四个条件的且最短的名字。

给定字符串 S,TS,T 和整数 KK,请你求出满足条件的名字的最短长度。

Input Format

第一行输入三个整数 N,M,KN,M,K

第二行输入一个字符串 SS

第三行输入一个字符串 TT

Output Format

输出一行一个整数表示最小长度。

10 10 0
hottokeiki
hottokeiki
10
10 10 1
hottokeiki
hottokeiki
11
10 10 3
hottokeiki
hottokeiki
15
6 9 0
Jouhou
Orinpikku
14
9 7 1
CoMMiTTee
TeRRaCe
15
6 8 2
JOIIOI
JOIGEGOI
9

Hint

【样例解释 #1】

字符串 hottokeiki 满足条件。可以证明,不存在长度更小的字符串满足条件,故答案为 1010

该样例满足子任务 1,3,4,7,81,3,4,7,8 的限制。

【样例解释 #2】

相较于上一个样例,仅有 KK 的值发生变化。

在该样例中,上一个样例的输出 hottokeiki 不满足第四个条件(任意两个相同的字符之间必须间隔至少 KK 个其他字符),因为两个 t 中没有其他字符。

而字符串 hotNtokeiki 满足条件,可以证明,不存在长度更小的字符串满足条件,故答案为 1111

该样例满足子任务 2,3,5,6,7,82,3,5,6,7,8 的限制。

【样例解释 #3】

相较于前两个样例,仅有 KK 的值发生变化。

在该样例中,上一个样例的输出 hotNtokeiki 不满足第四个条件(任意两个相同的字符之间必须间隔至少 KK 个其他字符),因为两个 t 之间仅有 11 个字符,两个 k 之间仅有 22 个字符,两个 i 之间仅有 11 个字符。

而字符串 hotarutokeiyuki 满足条件,可以证明,不存在长度更小的字符串满足条件,故答案为 1515

该样例满足子任务 3,83,8 的限制。

【样例解释 #4】

字符串 OJouhorinpikku 满足条件。可以证明,不存在长度更小的字符串满足条件,故答案为 1414

请注意上面的条件区分大小写,因此诸如 jouhorinpikku(长度为 1313)这样的字符串符合条件。

该样例满足子任务 4,7,84,7,8 的限制。

【样例解释 #5】

字符串 CoMaMiTeRTeRaCe 是长度最小且满足条件的字符串,故答案为 1515

该样例满足子任务 5,6,7,85,6,7,8 的限制。

【样例解释 #6】

字符串 JOIGEIGOI 是长度最小且满足条件的字符串,故答案为 99

该样例满足子任务 7,87,8 的限制。

【数据范围】

  • 1N,M5001\le N,M\le 500
  • 0K30\le K\le 3
  • S,TS,T 中仅包含大写字母和小写字母。

【子任务】

  1. 22 分)S=TS=TK=0K=0
  2. 77 分)S=TS=TK=1K=1
  3. 1616 分)S=TS=T
  4. 1717 分)K=0K=0
  5. 1313 分)K=1K=1N,M25N,M\le 25
  6. 1515 分)K=1K=1
  7. 2020 分)K2K\le 2
  8. 1010 分)无附加条件。