#include <bits/stdc++.h>
using namespace std;
template <class T>
T abs(T x) {
  return x > 0 ? x : -x;
}
int n;
int m;
vector<int> res;
vector<pair<int, int> > v[100000];
int go(int x, int p, int f) {
  int cur = 0;
  for (int i = 0; i < ((int)(v[x]).size()); i++) {
    int y = v[x][i].first;
    int z = v[x][i].second;
    if (y == p) continue;
    cur |= go(y, x, z);
  }
  if (f && !cur) {
    res.push_back(x + 1);
    cur = 1;
  }
  return cur;
}
int main() {
  scanf("%d", &n);
  for (int i = 0; i < n - 1; i++) {
    int a, b, c;
    scanf("%d%d%d", &a, &b, &c);
    a--;
    b--;
    c--;
    v[a].push_back(make_pair(b, c));
    v[b].push_back(make_pair(a, c));
  }
  go(0, 0, 0);
  sort((res).begin(), (res).end());
  printf("%d\n", ((int)(res).size()));
  for (int i = 0; i < ((int)(res).size()); i++) printf("%d ", res[i]);
  printf("\n");
  return 0;
}
