首页 > 试题广场 >

添加字符

[编程题]添加字符
  • 热度指数:3210 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 32M,其他语言64M
  • 算法知识视频讲解
牛牛手里有一个字符串A,羊羊的手里有一个字符串B,B的长度大于等于A,所以牛牛想把A串变得和B串一样长,这样羊羊就愿意和牛牛一起玩了。
而且A的长度增加到和B串一样长的时候,对应的每一位相等的越多,羊羊就越喜欢。比如"abc"和"abd"对应相等的位数为2,为前两位。
牛牛可以在A的开头或者结尾添加任意字符,使得长度和B一样。现在问牛牛对A串添加完字符之后,不相等的位数最少有多少位?

输入描述:
第一行为字符串A,第二行为字符串B,A的场地小于等于B的长度,B的长度小于等于50.字符均为小写字母。


输出描述:
输出一个整数表示A串添加完字符之后,不相等的位数最少有多少位?
示例1

输入

abe
cabc

输出

1
var s1 = readline();
var s2 = readline();

if(s2.indexOf(s1) !== -1){
    print(0);
}
else{
    var c = [];
    for(var i = 0; i < s2.length - s1.length + 1; i++){
        var s11 = s2.slice(0, i) + s1 + s2.slice(i + s1.length);
        c.push(sameCount(s11, s2));
    }
    print(Math.min.apply(this, c));
}

function sameCount (a, b) {
    var count = 0;
    for(var i = 0; i < a.length; i++){
        if(a.charAt(i) == b.charAt(i)){
            count++;
        }
    }
    return a.length - count;
}
给JavaScript草存在感
发表于 2017-05-22 16:11:07 回复(2)

热门推荐

通过挑战的用户

添加字符