#include <bits/stdc++.h>
using namespace std;
const long long MOD = (1e9) + 7;
const int INF = 1e9;
const long long INF64 = 1e18;
const double EPS = 1e-12;
const double PI = acos(-1);
const long long MD = 6235164;
const long long T = 23917;
const int N = 400100;
const int M = 2010;
int n, m, k;
string p, s;
string ans, t;
bool f;
int main() {
  ios_base::sync_with_stdio(0);
  getline(cin, p);
  getline(cin, s);
  cin >> k;
  n = int((s).size());
  m = int((p).size());
  for (int i = 0; i < int(k); i++) ans += "1";
  int qq = m % k;
  for (int u = min(k, n); u > 0; u--) {
    int q = (n - (u * (m / k)));
    t.clear();
    for (int i = 0; i < int(k); i++) t += "0";
    int sum = 0, ss = 0;
    for (int i = k - 1; i >= 0; i--) {
      if (sum == u - q && i >= qq) continue;
      bool flag = 1;
      int s1 = 0;
      for (int j = 0; j < int(m / k + 1); j++) {
        int z = k * j + i;
        if (z >= m) continue;
        int w = u * j + u - sum - 1;
        if (w >= n) {
          flag = 0;
          break;
        }
        if (s[w] != p[z]) {
          flag = 0;
          break;
        }
        s1++;
      }
      if (flag && s1) {
        sum++;
        t[i] = '1';
        ss += s1;
      }
      if (sum == u) break;
    }
    if (sum != u || ss != n) continue;
    ans = min(ans, t);
    f = 1;
  }
  if (f)
    cout << ans;
  else
    cout << 0;
  return 0;
}
