AT_agc021_d.[AGC021D] Reversed LCS

省选/NOI-

通过率:0%

AC君温馨提醒

该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。

题目描述

高桥君打算送给妈妈一个字符串作为礼物。

字符串 TT 的“价值”定义为:将 TT 反转得到 T′T',TT 与 T′T' 的最长公共子序列的长度。也就是说,作为子序列(不要求连续)同时出现在 TT 和 T′T' 中的最长字符串的长度。

高桥君手中有一个字符串 SS。他希望通过最多修改 KK 个字符,使得最终得到的字符串的“价值”尽可能大。

请你求出能够达到的最大“价值”。

输入格式

输入以如下格式从标准输入读入:

SS KK

输出格式

输出能够达到的最大“价值”。

输入输出样例

  • 输入#1

    abcabcabc
    1

    输出#1

    7
  • 输入#2

    atcodergrandcontest
    3

    输出#2

    15

说明/提示

限制条件

  • 1≤∣S∣≤3001 \leq |S| \leq 300
  • 0≤K≤∣S∣0 \leq K \leq |S|
  • SS 仅由小写英文字母组成
  • KK 是整数

样例解释 1

将第 11 个字符修改为 c 后,字符串变为 cbcabcabc。此时,设该字符串为 TT,则长度为 77 的字符串 cbabcbc 是 TT 与 T′T' 的最长公共子序列的一种。

由 ChatGPT 4.1 翻译

输入解题思路,AI测评打分。不知道怎么写?

首页