#include <bits/stdc++.h>
using namespace std;
double x, y, T, X, Y, r, v;
int n;
const double pi = acos(-1);
vector<pair<double, double> > p;
int main() {
  scanf("%lf%lf%lf%lf", &x, &y, &v, &T);
  v *= T;
  scanf("%d", &n);
  for (int i = 1; i <= n; i++) {
    scanf("%lf%lf%lf", &X, &Y, &r);
    X -= x;
    Y -= y;
    if (X * X + Y * Y <= r * r) {
      printf("1\n");
      return 0;
    }
    double d = sqrt(X * X + Y * Y);
    if (d - r > v) continue;
    double a = sqrt(X * X + Y * Y - r * r);
    double L = atan2(Y, X), R;
    if (a <= v)
      R = asin(r / d);
    else
      R = acos((d * d + v * v - r * r) / (2 * v * d));
    L -= R;
    R = L + R + R;
    if (L < -pi) {
      p.push_back(make_pair(L + pi + pi, pi));
      L = -pi;
    }
    if (R > pi) {
      p.push_back(make_pair(-pi, R - pi - pi));
      R = pi;
    }
    p.push_back(make_pair(L, R));
  }
  sort(p.begin(), p.end());
  double a = 0, d = -pi;
  for (int i = 0; i < p.size(); i++) {
    if (d < p[i].first) d = p[i].first;
    if (p[i].second <= d) continue;
    a += p[i].second - d;
    d = p[i].second;
  }
  printf("%.11lf\n", a / 2 / pi);
}
