#include <bits/stdc++.h>
using namespace std;
template <class T>
T mod_f(T num) {
  if (num >= 0)
    return num % 1000000007;
  else
    return ((num % 1000000007) + 1000000007) % 1000000007;
}
template <class T>
T fast_pow(T b, T p) {
  if (p == 0) return 1;
  if (p % 2) {
    T x = mod_f(mod_f(b) * mod_f(fast_pow(b, p - 1)));
    return x;
  } else {
    T x = mod_f(fast_pow(b, p / 2));
    x = mod_f(mod_f(x) * mod_f(x));
    return x;
  }
}
template <class T>
T gcd(T a, T b) {
  a = abs(a);
  b = abs(b);
  while (b) {
    T r = a % b;
    a = b;
    b = r;
  }
  return a;
}
template <class T>
ostream& operator<<(ostream& out, vector<T> v) {
  int sz = v.size() - 1;
  for (int i = 0; i <= sz; i++) out << v[i] << " ";
  return out;
}
template <class T>
ostream& operator,(ostream& out, T a) {
  out << a << " ";
  return out;
}
int main() {
  int r, x1, y1, x2, y2;
  cin >> r >> x1 >> y1 >> x2 >> y2;
  double dx = x1 - x2;
  double dy = y1 - y2;
  double d = hypot(dx, dy);
  cout << ceil(d / (2 * r));
  return 0;
}
