#include <bits/stdc++.h>
int main() {
  char n[1010], m[1010];
  int chn[30], chm[30];
  int i, j, ans;
  memset(chn, 0, sizeof(chn));
  memset(chm, 0, sizeof(chm));
  ans = 0;
  scanf("%s%s", n, m);
  for (i = 0; i < strlen(m); ++i) {
    int flag = 0;
    for (j = 0; j < strlen(n); ++j)
      if (m[i] == n[j]) {
        flag = 1;
      }
    if (!flag) {
      printf("-1");
      return 0;
    }
  }
  for (i = 0; i < strlen(n); ++i) {
    chn[n[i] - 'a']++;
  }
  for (i = 0; i < strlen(m); ++i) {
    chm[m[i] - 'a']++;
  }
  for (i = 0; i < 30; ++i) {
    if (chm[i] <= chn[i])
      ans += chm[i];
    else
      ans += chn[i];
  }
  printf("%d", ans);
  return 0;
}
