using System;
using System.Text;
using System.Linq;
using System.Collections;
using System.Collections.Generic;
using static System.Math;
using static System.Console;
using static exMath;
using static exReadLine;

class Program
{
    
    static void Main(string[] args)
    {
        string S = ReadLine();
        string T = ReadLine();
        int ans = int.MaxValue;
        for (int i = 0; i < S.Length - T.Length + 1; i++)
        {
            string a = S.Substring(i, T.Length);
            int equals = 0;
            for (int j = 0; j < T.Length; j++)
            {
                if (T[j] == a[j]) equals++;
            }
            if (T.Length - equals < ans) ans = T.Length - equals;
        }
        WriteLine(ans);
    }
}

static class exReadLine
{
    public static void intReadLine(out int a)
    {
        a = int.Parse(ReadLine());
    }
    public static void intReadLine(out int a, out int b)
    {
        int[] input = ReadLine().Split().Select(int.Parse).ToArray();
        a = input[0];
        b = input[1];
    }
    public static void intReadLine(out int a, out int b, out int c)
    {
        int[] input = ReadLine().Split().Select(int.Parse).ToArray();
        a = input[0];
        b = input[1];
        c = input[2];
    }
    public static void intReadLine(out int a, out int b, out int c, out int d)
    {
        int[] input = ReadLine().Split().Select(int.Parse).ToArray();
        a = input[0];
        b = input[1];
        c = input[2];
        d = input[3];
    }

    public static void longReadLine(out long a)
    {
        a = long.Parse(ReadLine());
    }
    public static void longReadLine(out long a, out long b)
    {
        long[] input = ReadLine().Split().Select(long.Parse).ToArray();
        a = input[0];
        b = input[1];
    }
    public static void longReadLine(out long a, out long b, out long c)
    {
        long[] input = ReadLine().Split().Select(long.Parse).ToArray();
        a = input[0];
        b = input[1];
        c = input[2];
    }
    public static void longReadLine(out long a, out long b, out long c, out long d)
    {
        long[] input = ReadLine().Split().Select(long.Parse).ToArray();
        a = input[0];
        b = input[1];
        c = input[2];
        d = input[3];
    }
    
    public static void intArrayReadLine(out int[] a)
    {
        a = ReadLine().Split().Select(int.Parse).ToArray();
    }

    public static void longArrayReadLine(out long[] a)
    {
        a = ReadLine().Split().Select(long.Parse).ToArray();
    }

    public static void intListReadLine(out List<int> a)
    {
        a = ReadLine().Split().Select(int.Parse).ToList();
    }

    public static void longListReadLine(out List<long> a)
    {
        a = ReadLine().Split().Select(long.Parse).ToList();
    }
}

static class exMath
{
    /// <summary>
    /// 最大公約数
    /// </summary>
    public static int Gcd(int a, int b)
    {
        if (a < b) return Gcd(b, a);
        while (b != 0)
        {
            var r = a % b;
            a = b;
            b = r;
        }
        return a;
    }
    public static long Gcd(long a, long b)
    {
        if (a < b) return Gcd(b, a);
        while (b != 0)
        {
            var r = a % b;
            a = b;
            b = r;
        }
        return a;
    }

    /// <summary>
    /// 最小公倍数
    /// </summary>
    public static long Lcm(int a, int b)
    {
        return BigMul(a, b) / Gcd(a, b);
    }
    public static long Lcm(long a, long b)
    {
        return a * b / Gcd(a, b);
    }
}

Measured memory_bytes: 26196