import sys



readline = sys.stdin.readline

MOD = 10 ** 9 + 7

INF = float('INF')

sys.setrecursionlimit(10 ** 5)





def main():

    S = eval(input())

    T = eval(input())

    ls = len(S)

    lt = len(T)



    ans = INF

    for i in range(ls - lt + 1):

        cur = 0

        for j in range(lt):

            if S[i + j] != T[j]:

                cur += 1

        ans = min(ans, cur)



    print(ans)





if __name__ == '__main__':

    main()

S = eval(input())

T = eval(input())



ans = 1000000  # 適当に1001以上を初期値にしておきます



# Tが1文字のときlen(S)回、2文字のときlen(S) - 1回 …… なので、

# len(S) - len(T) + 1 パターンあります



for i in range(len(S) - len(T) + 1):

    score = 0

    U = S[i:i + len(T)]  # Sのi文字目から連続するlen(T)文字を、Uとします

    for j in range(len(T)):

        if U[j] != T[j]:

            score += 1

    ans = min(ans, score)



print(ans)

import sys

readline = sys.stdin.readline
MOD = 10**9 + 7
INF = float("INF")
sys.setrecursionlimit(10**5)


def main():
    S = eval(input())
    T = eval(input())
    ls = len(S)
    lt = len(T)
    ans = INF
    for i in range(ls - lt + 1):
        cur = 0
        for j in range(lt):
            if S[i + j] != T[j]:
                cur += 1
        ans = min(ans, cur)
    print(ans)


if __name__ == "__main__":
    main()

S = eval(input())
T = eval(input())
ans = 1000000  # 適当に1001以上を初期値にしておきます
# Tが1文字のときlen(S)回、2文字のときlen(S) - 1回 …… なので、
# len(S) - len(T) + 1 パターンあります
for i in range(len(S) - len(T) + 1):
    score = 0
    U = S[i : i + len(T)]  # Sのi文字目から連続するlen(T)文字を、Uとします
    for j in range(len(T)):
        if U[j] != T[j]:
            score += 1
    ans = min(ans, score)
print(ans)

-import sys - -readline = sys.stdin.readline -MOD = 10**9 + 7 -INF = float("INF") -sys.setrecursionlimit(10**5) - - -def main(): -    S = eval(input()) -    T = eval(input()) -    ls = len(S) -    lt = len(T) -    ans = INF -    for i in range(ls - lt + 1): -        cur = 0 -        for j in range(lt): -            if S[i + j] != T[j]: -                cur += 1 -        ans = min(ans, cur) -    print(ans) - - -if __name__ == "__main__": -    main() +S = eval(input()) +T = eval(input()) +ans = 1000000  # 適当に1001以上を初期値にしておきます +# Tが1文字のときlen(S)回、2文字のときlen(S) - 1回 …… なので、 +# len(S) - len(T) + 1 パターンあります +for i in range(len(S) - len(T) + 1): +    score = 0 +    U = S[i : i + len(T)]  # Sのi文字目から連続するlen(T)文字を、Uとします +    for j in range(len(T)): +        if U[j] != T[j]: +            score += 1 +    ans = min(ans, score) +print(ans)