CF1506C.Double-ended Strings
入门
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
You are given the strings a and b, consisting of lowercase Latin letters. You can do any number of the following operations in any order:
- if ∣a∣>0 (the length of the string a is greater than zero), delete the first character of the string a, that is, replace a with a2a3…an;
- if ∣a∣>0, delete the last character of the string a, that is, replace a with a1a2…an−1;
- if ∣b∣>0 (the length of the string b is greater than zero), delete the first character of the string b, that is, replace b with b2b3…bn;
- if ∣b∣>0, delete the last character of the string b, that is, replace b with b1b2…bn−1.
Note that after each of the operations, the string a or b may become empty.
For example, if a="hello" and b="icpc", then you can apply the following sequence of operations:
- delete the first character of the string a ⇒ a="ello" and b="icpc";
- delete the first character of the string b ⇒ a="ello" and b="cpc";
- delete the first character of the string b ⇒ a="ello" and b="pc";
- delete the last character of the string a ⇒ a="ell" and b="pc";
- delete the last character of the string b ⇒ a="ell" and b="p".
For the given strings a and b, find the minimum number of operations for which you can make the strings a and b equal. Note that empty strings are also equal.
给你两个由小写拉丁字母组成的字符串 a 和 b。你可以以任意顺序执行以下任意次数的操作:
- 若 ∣a∣>0(字符串 a 的长度大于零),则删除字符串 a 的第一个字符,即用 a2a3…an 替换 a;
- 若 ∣a∣>0,则删除字符串 a 的最后一个字符,即用 a1a2…an−1 替换 a;
- 若 ∣b∣>0(字符串 b 的长度大于零),则删除字符串 b 的第一个字符,即用 b2b3…bn 替换 b;
- 若 ∣b∣>0,则删除字符串 b 的最后一个字符,即用 b1b2…bn−1 替换 b。
注意:每次操作后,字符串 a 或 b 可能变为空。
例如,若 a="hello" 且 b="icpc",则你可以执行如下操作序列:
- 删除字符串 a 的第一个字符 ⇒ a="ello",b="icpc";
- 删除字符串 b 的第一个字符 ⇒ a="ello",b="cpc";
- 删除字符串 b 的第一个字符 ⇒ a="ello",b="pc";
- 删除字符串 a 的最后一个字符 ⇒ a="ell",b="pc";
- 删除字符串 b 的最后一个字符 ⇒ a="ell",b="p"。
对于给定的字符串 a 和 b,求使字符串 a 和 b 相等所需的最少操作次数。注意:空字符串也被视为相等。
输入格式
The first line contains a single integer t (1≤t≤100). Then t test cases follow.
The first line of each test case contains the string a (1≤∣a∣≤20), consisting of lowercase Latin letters.
The second line of each test case contains the string b (1≤∣b∣≤20), consisting of lowercase Latin letters.
第一行包含一个整数 t(1≤t≤100)。随后是 t 组测试数据。
每组测试数据的第一行包含字符串 a(1≤∣a∣≤20),由小写拉丁字母组成。
每组测试数据的第二行包含字符串 b(1≤∣b∣≤20),由小写拉丁字母组成。
输出格式
For each test case, output the minimum number of operations that can make the strings a and b equal.
对于每个测试用例,输出使字符串 a 和 b 相等所需的最少操作次数。
输入输出样例
输入#1
5 a a abcd bc hello codeforces hello helo dhjakjsnasjhfksafasd adjsnasjhfksvdafdser
输出#1
0 2 13 3 20
输入解题思路,AI测评打分。不知道怎么写?