#include <bits/stdc++.h>
using namespace std;
const int inf = 0x3f3f3f3f;
char s[2003], t[2003];
int dp[2003][2003], cnt[150];
int fon(int x, int y) {
  if (y == 0) return 0;
  if (dp[x][y] != -1) return dp[x][y];
  if (s[x] == t[y]) return dp[x][y] = fon(x - 1, y - 1);
  int mn = inf;
  if (cnt[t[y]]) {
    --cnt[t[y]];
    mn = min(mn, fon(x, y - 1));
    ++cnt[t[y]];
  }
  if (x > 0) {
    ++cnt[s[x]];
    mn = min(mn, fon(x - 1, y) + 1);
    --cnt[s[x]];
  }
  return dp[x][y] = mn;
}
int main() {
  int T;
  scanf("%d", &T);
  while (T--) {
    int n, ans;
    scanf("%d", &n);
    for (int i = 0; i <= n; ++i)
      for (int j = 0; j <= n; ++j) dp[i][j] = -1;
    memset(cnt, 0, sizeof(cnt));
    scanf("%s", s + 1);
    scanf("%s", t + 1);
    s[0] = ' ';
    t[0] = ' ';
    ans = fon(n, n);
    if (ans == inf)
      printf("-1\n");
    else
      printf("%d\n", ans);
  }
  return 0;
}
