#include <bits/stdc++.h>
using namespace std;
const int MAXN = 100000 + 4;
vector<int> G[MAXN];
int N, Pa[MAXN];
double D[MAXN];
double dp(int pa, int u) {
  double d = 0;
  int c = 0;
  for (auto v : G[u])
    if (v != pa) d += 1 + dp(u, v), ++c;
  if (c) d /= c;
  return d;
}
int main() {
  int u, v;
  while (cin >> N) {
    for (int i = (0); i < (N); ++i) G[i].clear();
    for (int i = (0); i < (N - 1); ++i) {
      cin >> u >> v;
      u--, v--;
      G[u].push_back(v), G[v].push_back(u);
    }
    double ans = dp(-1, 0);
    cout << setprecision(15) << ans << endl;
  }
  return 0;
}
