#include <bits/stdc++.h>
using namespace std;
long long int em(long long int x, long long int Mod, long long int n) {
  if (n == 0)
    return 1ll;
  else if (n % 2 == 0)
    return em((x % Mod * x % Mod) % Mod, Mod, n / 2) % Mod;
  else
    return (x % Mod * em((x % Mod * x % Mod) % Mod, Mod, (n - 1) / 2)) % Mod;
}
long long int dp[109];
int32_t main() {
  std::ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  cout.tie(NULL);
  string a, b;
  long long int c, d, i, j, k, l;
  cin >> c >> d;
  cin >> a >> b;
  long long int l1, l2;
  l1 = a.length();
  l2 = b.length();
  for (i = 0; i < l2; i++) {
    long long int st = i;
    long long int co = 0;
    for (j = 0; j < l1; j++) {
      if (a[j] == b[st]) {
        co++;
        st = (st + 1) % l2;
      }
    }
    dp[i] = co;
  }
  long long int fco = 0;
  for (i = 0; i < c; i++) {
    fco += dp[fco % l2];
  }
  cout << fco / l2 / d << "\n";
}
