#include <bits/stdc++.h>
using namespace std;
void solve() {
  int n;
  cin >> n;
  vector<int> x(n), y(n), dx(n), dy(n), s(n);
  vector<double> vx(n), vy(n);
  for (int i = 0; i < n; i++) {
    cin >> x[i] >> y[i] >> dx[i] >> dy[i] >> s[i];
    double dr = sqrt(dx[i] * dx[i] + dy[i] * dy[i]);
    vx[i] = s[i] * dx[i] / dr;
    vy[i] = s[i] * dy[i] / dr;
  }
  double ans = numeric_limits<double>::infinity();
  for (int i = 0; i < n - 1; i++) {
    for (int j = i + 1; j < n; j++) {
      int xji = x[j] - x[i], yji = y[j] - y[i];
      double ti, tj;
      if (dx[i] * dy[j] == dx[j] * dy[i]) {
        if (xji * dy[j] == yji * dx[j] && xji * dy[i] == yji * dx[i]) {
          ti = xji / vx[i];
          tj = -xji / vx[j];
          if (ti < 0 && tj < 0) {
            continue;
          } else if (ti > 0 && tj > 0) {
            ans = min(ans, xji / (vx[i] - vx[j]));
            continue;
          } else {
            ans = min(ans, max(ti, tj));
            continue;
          }
        }
      } else {
        double delta, deltati, deltatj;
        delta = vx[i] * -vy[j] - vy[i] * -vx[j];
        deltati = xji * -vy[j] - yji * -vx[j];
        deltatj = vx[i] * yji - vy[i] * xji;
        ti = deltati / delta;
        tj = deltatj / delta;
        if (ti < 0 || tj < 0) {
          continue;
        } else {
          ans = min(ans, max(ti, tj));
          continue;
        }
      }
    }
  }
  if (ans == numeric_limits<double>::infinity())
    cout << "No show :(" << endl;
  else
    printf("%.16e\n", ans);
}
int main() {
  int t = 1;
  while (t--) {
    solve();
  }
  return 0;
}
