import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class OpenLock2 {
static int[][] seq = new int[][] { { 1, 2, 3, 4, 0 }, { 1, 2, 4, 3, 1 },
{ 1, 3, 2, 4, 1 }, { 1, 3, 4, 2, 2 }, { 1, 4, 2, 3, 2 },
{ 1, 4, 3, 2, 3 }, { 2, 1, 3, 4, 1 }, { 2, 1, 4, 3, 2 },
{ 2, 3, 1, 4, 2 }, { 2, 3, 4, 1, 3 }, { 2, 4, 1, 3, 3 },
{ 2, 4, 3, 1, 4 }, { 3, 1, 2, 4, 2 }, { 3, 1, 4, 2, 3 },
{ 3, 2, 1, 4, 3 }, { 3, 2, 4, 1, 4 }, { 3, 4, 1, 2, 4 },
{ 3, 4, 2, 1, 5 }, { 4, 1, 2, 3, 3 }, { 4, 1, 3, 2, 4 },
{ 4, 2, 1, 3, 4 }, { 4, 2, 3, 1, 5 }, { 4, 3, 1, 2, 5 },
{ 4, 3, 2, 1, 6 } };
static int[] org;
static int[] pwd;
static int step;
public static void main(String[] args) throws FileNotFoundException {
// TODO Auto-generated method stub
Scanner sc = new Scanner(System.in);
sc = new Scanner(new File("src/file/openlock"));
int T = sc.nextInt();
for (int t = 0; t < T; t++) {
org = new int[4];
pwd = new int[4];
step=100;
char[] tmpr1 = sc.next().toCharArray();
char[] tmpr2 = sc.next().toCharArray();
for (int i = 0; i < 4; i++) {
org[i] = tmpr1[i] - 48;
pwd[i] = tmpr2[i] - 48;
}
for(int i=0;i<24;i++){
if(seq[i][4]>=step)
continue;
CacuStep(i);
}
System.out.println(step);
}
}
private static void CacuStep(int no) {
// TODO Auto-generated method stub
int tmps=0;
tmps+=seq[no][4];
for(int i=0;i<4;i++){
int tmp=(org[seq[no][i]-1]-pwd[i]+9)%9;
if(tmp>4)
tmp=9-tmp;
tmps+=tmp;
}
if(tmps<step)
step=tmps;
}
}
sample input:
4
1234
4321
8679
5564
1234
2144
1111
9999
sample output:
6
9
2
4