#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 10;
inline long long read() {
  int X = 0;
  bool flag = 1;
  char ch = getchar();
  while (ch < '0' || ch > '9') {
    if (ch == '-') flag = 0;
    ch = getchar();
  }
  while (ch >= '0' && ch <= '9') {
    X = (X << 1) + (X << 3) + ch - '0';
    ch = getchar();
  }
  if (flag) return X;
  return ~(X - 1);
}
inline void write(long long x) {
  if (x < 0) x = ~x + 1, putchar('-');
  if (x > 9) write(x / 10);
  putchar(x % 10 + '0');
}
int n, m, k;
int main() {
  cin >> n >> m >> k;
  m -= n;
  int tmp = 1;
  int l = k, r = k;
  while (m > 0) {
    if (r - l + 1 <= m) {
      m -= r - l + 1;
      tmp++;
    }
    if (r < n) r++;
    if (l > 1) l--;
    if (r == n && l == 1) {
      tmp += m / n;
      break;
    }
  }
  cout << tmp << endl;
  return 0;
}
