Problem:
Score : 200 points

Problem Statement

Given are two strings S and T.

Let us change some of the characters in S so that T will be a substring of S.

At least how many characters do we need to change?

Here, a substring is a consecutive subsequence. For example, xxx is a substring of yxxxy, but not a substring of xxyxx.

Constraints

The lengths of S and T are each at least 1 and at most 1000.

The length of T is at most that of S.

S and T consist of lowercase English letters.

Input

Input is given from Standard Input in the following format:

S
T

Output

Print the minimum number of characters in S that need to be changed.

Sample Input 1

cabacc
abc

Sample Output 1

1

For example, changing the fourth character a in S to c will match the second through fourth characters in S to T.

Since S itself does not have T as its substring, this number of changes - one - is the minimum needed.

Sample Input 2

codeforces
atcoder

Sample Output 2

6

Solution in Java (OpenJDK 11.0.6) (judge verdict: Accepted)

import java.util.Scanner;

public class Main {
  public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    String S = scan.nextLine();
    String T = scan.nextLine();

    int S_len = S.length();
    int T_len = T.length();

    int same_char = 0;
    int longlen = 0;
    int ans = 0;
    int k = 0;

    int hikaku_len = S_len - T_len + 1;

    for (var i = 0;i<hikaku_len;i++){
      same_char = 0;
      k = i;
      for (var j = 0;j < T_len;j++){
        if ( S.charAt(k) == T.charAt(j) ) {
          same_char++;
        }
        k++;
      }
      if (longlen < same_char){
        longlen = same_char;
      }
    }

    ans = T_len - longlen;

    System.out.println(ans);
    scan.close();
  }
}