#include <bits/stdc++.h>
using namespace std;
bool isprime[2000050];
int sumf[2000050];
int a, b, k, i;
int hf, lf, l;
int main() {
  ios::sync_with_stdio(false);
  memset(isprime, true, sizeof isprime);
  isprime[1] = false;
  for (i = 2; i < 1000000; i++) {
    if (isprime[i])
      for (int j = 2 * i; j < 2000050; j += i) isprime[j] = false;
  }
  sumf[0] = 0;
  for (i = 1; i < 2000050; i++) sumf[i] = sumf[i - 1] + isprime[i];
  cin >> a >> b >> k;
  hf = 0;
  lf = b - a + 1;
  while (hf + 1 < lf) {
    l = (hf + lf) / 2;
    bool flag = true;
    for (i = a; i <= b - l + 1; i++) {
      if ((sumf[i + l - 1] - sumf[i - 1]) < k) {
        flag = false;
        break;
      }
    }
    if (!flag)
      hf = l;
    else
      lf = l;
  }
  bool flag = true;
  for (i = a; i <= b - lf + 1; i++) {
    if ((sumf[i + lf - 1] - sumf[i - 1]) < k) {
      flag = false;
      break;
    }
  }
  if (!flag)
    printf("%d\n", -1);
  else
    printf("%d\n", lf);
}
