import java.util.Scanner;

public class Main {
    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        String s = scanner.nextLine();
        String t = scanner.nextLine();
        scanner.close();
        
        int sLen = s.length();
        int tLen = t.length();
        
        // 因为t的长度不小于s,所以至少有一个可能的子串
        int minOperations = Integer.MAX_VALUE;
        
        // 遍历t中所有与s长度相同的子串
        for (int i = 0; i <= tLen - sLen; i++) {
            int operations = 0;
            // 计算将s转换为当前子串所需的操作次数
            for (int j = 0; j < sLen; j++) {
                char sChar = s.charAt(j);
                char tChar = t.charAt(i + j);
                // 计算两个字符之间的最小替换次数
                operations += minSteps(sChar, tChar);
            }
            // 更新最小操作次数
            if (operations < minOperations) {
                minOperations = operations;
            }
        }
        
        System.out.println(minOperations);
    }
    
    // 计算两个字符之间的最小替换次数
    private static int minSteps(char a, char b) {
        int diff = Math.abs(a - b);
        // 替换可以向前或向后,取较小值
        return Math.min(diff, 26 - diff);
    }
}