[算法题]添加字符

题目链接: 添加字符

因为数据量很小, 所以直接两层遍历暴力求解, 依次将字符串 A 与字符串 B 相同位进行比对, 每轮记录当前轮次不相等的位数是几位, 并与历史上记录的比较取小值, 图示:

经过比较后, 题解就为 1, 空白处不用管, 因为题意是可以在开头和末尾添加字符的, 添加与 B 串对应位置相同的字符即可.

题解代码:

cpp 复制代码
#include <iostream>
#include <climits>
using namespace std;

int main() 
{
    string A, B;
    cin >> A >> B;
    int res = INT_MAX;
    for(int i = 0; i <= B.size() - A.size(); ++i)
    {
        int tmp = 0;
        for(int j = 0; j < A.size(); ++j)
        {
            if(B[i + j] != A[j])
            {
                tmp++;
            }
        }
        res = min(tmp, res);
    }
    cout << res << endl;
    return 0;
}
相关推荐
csdn_aspnet4 小时前
C语言 Lomuto分区算法(Lomuto Partition Algorithm)
c语言·开发语言·算法
谙弆悕博士4 小时前
【附C源码】从零实现C语言堆数据结构:原理、实现与应用
c语言·数据结构·算法··数据结构与算法
gaosushexiangji7 小时前
DIC系统推荐:基于千眼狼三维数字图像相关的无人机旋翼疲劳试验全场应变与位移测量
人工智能·算法
小王C语言9 小时前
【线程概念与控制】:线程封装
jvm·c++·算法
kyle~9 小时前
工程数学---点云配准卡布施(Kabsch)算法(求解最优旋转矩阵)
线性代数·算法·矩阵
张二娃同学9 小时前
03_变量常量与输入输出_printf与scanf详解
算法
江南十四行10 小时前
并发编程(一)
java·jvm·算法
z2005093010 小时前
今日算法(依旧二叉树)
算法·leetcode·职场和发展
Zxc_11 小时前
《遗传算法:从自然选择到Rastrigin函数优化,手写一个完整的进化求解器》
算法
阿Y加油吧11 小时前
两道经典动态规划题:乘积最大子数组 & 分割等和子集 复盘笔记
笔记·算法·动态规划