#include <bits/stdc++.h>
using namespace std;
int x[25005], y[25005], dx[25005], dy[25005], s[25005];
int main() {
  int n;
  cin >> n;
  for (int i = 0; i < n; ++i) {
    cin >> x[i] >> y[i] >> dx[i] >> dy[i] >> s[i];
  }
  long double best = 1e20;
  for (int i = 0; i < n; ++i) {
    for (int j = i + 1; j < n; ++j) {
      int d = dx[j] * dy[i] - dx[i] * dy[j];
      if (d == 0) {
        if ((y[j] - y[i]) * dx[i] - (x[j] - x[i]) * dy[i] == 0) {
          long double g1 = (x[j] - x[i]) / (long double)dx[i];
          long double g2 = (x[i] - x[j]) / (long double)dx[j];
          long double t1 = g1 * sqrt(dx[i] * dx[i] + dy[i] * dy[i]) / s[i];
          long double t2 = g2 * sqrt(dx[j] * dx[j] + dy[j] * dy[j]) / s[j];
          if (t1 > 0) {
            best = min(best, t1);
          }
          if (t2 > 0) {
            best = min(best, t2);
          }
          if (t1 > 0 && t2 > 0) {
            best = min(best, 1 / (1 / t1 + 1 / t2));
          }
        }
      } else {
        long double g1 =
            ((y[j] - y[i]) * dx[j] - (x[j] - x[i]) * dy[j]) / (long double)d;
        long double g2 =
            ((y[j] - y[i]) * dx[i] - (x[j] - x[i]) * dy[i]) / (long double)d;
        if (g1 < 0 || g2 < 0) {
          continue;
        }
        long double t1 = g1 * sqrt(dx[i] * dx[i] + dy[i] * dy[i]) / s[i];
        long double t2 = g2 * sqrt(dx[j] * dx[j] + dy[j] * dy[j]) / s[j];
        best = min(best, max(t1, t2));
      }
    }
  }
  if (best >= 1e20) {
    cout << "No show :(" << endl;
  } else {
    cout.precision(16);
    cout << best << endl;
  }
  return 0;
}
