首页 > 试题广场 >

小红的字符串修改

[编程题]小红的字符串修改
  • 热度指数:7546 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 256M,其他语言512M
  • 算法知识视频讲解
\,\,\,\,\,\,\,\,\,\,小红有一个由小写字母构成的字符串 s,每次她可以把其中一个任意一个字母替换成其在字母表中相邻的字母,例如把 'a' 替换成 'b' 或者 'z'。现在小红想知道,最少需要替换多少次,使得 s 成为 t子串

\,\,\,\,\,\,\,\,\,\,如果字符串 t 可以通过从字符串 s 的开头删除若干(可能为零或全部)字符以及从结尾删除若干(可能为零或全部)字符得到,则字符串 t 是字符串 s子串

输入描述:
\,\,\,\,\,\,\,\,\,\,第一行输入一个长度不超过 10^3 ,且仅由小写字母构成的字符串 s 代表小红手中待替换的串。
\,\,\,\,\,\,\,\,\,\,第二行输入一个长度不小于 s 但不超过 10^3 ,且仅由小写字母构成的字符串 t 代表目标串。


输出描述:
\,\,\,\,\,\,\,\,\,\,在一行上输出一个整数,代表最少需要替换的次数。
示例1

输入

abc
abbc

输出

1

说明

\,\,\,\,\,\,\,\,\,\,需要进行一次替换,将 '\tt c' 替换成 '\tt b' ,此时得到 "\tt abb" ,是 "\tt abbc" 的子串,因为本质上是由 "\tt abbc" 末尾删除了一个字符得到的。
示例2

输入

zzzzzz
xyzabc

输出

9
头像 Silencer76
发表于 2025-08-08 19:55:58
题目链接 小红的字符串修改 题目描述 小红有一个由小写字母构成的字符串 。她每次可以把其中任意一个字母替换成其在字母表中相邻的字母(例如把 'b' 替换成 'a' 或者 'c',且 'a' 和 'z' 也算相邻)。 现在小红还有一个字符串 ,她想知道,最少需要替换多少次,使得字符串 能够成为字符串 展开全文
头像 CARLJOSEPHLEE
发表于 2025-07-13 17:23:33
我还以为是力扣那个经典的编辑距离,结果是个暴力枚举 s1 = [ord(i) for i in input().strip()] s2 = [ord(i) for i in input().strip()] n1,n2 = len(s1),len(s2) tempmin = 9999999999 f 展开全文
头像 BraveCoder
发表于 2025-08-27 11:18:17
import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); 展开全文
头像 何成95
发表于 2025-10-26 11:30:30
s = input() t = input() def solve(s,t): ns, nt = len(s), len(t)#分别求字符串长度 minl = float('inf')#最小长度初始化为无限 for i in range(nt-ns+1):#较长字符第i个字 展开全文
头像 刚子起床咯
发表于 2025-07-14 17:32:42
#include <iostream> #include <limits> using namespace std; int main() { string s; string t; cin >> s >> t; in 展开全文
头像 周康禧
发表于 2025-12-03 22:22:42
#include <bits/stdc++.h> using namespace std; using ll = long long int; using ld = long double; using PII=pair<ll,ll>; using PIII=pair< 展开全文
头像 lahm66
发表于 2025-09-05 08:46:51
遍历即可 import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner 展开全文
头像 雾隐游龙
发表于 2025-08-27 21:44:00
#include <cstdint> #include <iostream> #include<algorithm> #include<string> using namespace std; int main() { string s,t; 展开全文
头像 昱立123
发表于 2025-11-04 17:17:55
import java.util.Scanner; // 注意类名必须为 Main, 不要有任何 package xxx 信息 public class Main { public static void main(String[] args) { Scanner sc = 展开全文
头像 理智的coder在debug
发表于 2025-07-11 15:19:21
s1 = input() s2 = input() l1, l2 = len(s1), len(s2) # 初始化一个很大的数 min_times = 1e6 # 转为ASCII码列表,便于计算 s1_num = [ord(i) for i in s1] s2_num = [ord(i) for i 展开全文