#include <bits/stdc++.h>
const int maxn = 200005;
const int inf = 1234567890;
using namespace std;
int n, a, b;
int main(void) {
  cin >> n >> a >> b;
  double max_x = -1;
  for (int i = ((1) > (n - b) ? (1) : (n - b));
       i <= ((n - 1) < (a) ? (n - 1) : (a)); i++) {
    double av1 = 1.0 * a / i;
    double av2 = 1.0 * b / (n - i);
    double cur_x = ((av1) < (av2) ? (av1) : (av2));
    max_x = ((max_x) > (cur_x) ? (max_x) : (cur_x));
  }
  cout << (int)max_x << endl;
  return 0;
}
