Ion şi Vasile joacă un joc. Ei au la dispoziţie un arbore binar strict (adică fiecare nod are 0 sau 2 fii) cu N noduri, numerotate de la 1 la N (nodul numerotat cu 1 este rădăcina arborelui). Iniţial, toate nodurile sunt colorate în alb. Jucătorii vor efectua mutări alternativ, iar jucătorul aflat la mutare va colora în negru un nod colorat în alb. Ion efectuează prima mutare şi poate colora în negru un singur nod (oricare) al arborelui. Considerând că ultimul nod colorat de unul dintre jucători este P, jucătorul care urmează la mutare poate colora în negru unul din următoarele noduri (dacă nu au fost deja colorate în negru) :
- unul din cei 2 fii ai lui P (dacă P nu este frunză în arbore)
- tatăl lui P (dacă P nu este rădăcina arborelui)
Jocul continuă până când unul dintre jucători nu mai poate efectua nici o mutare. Atunci, jucătorul care a efectuat ultima mutare este considerat câştigător. Nodul ales de Ion la prima mutare este numit nod câştigător dacă Ion poate câştiga jocul, indiferent de mutările lui Vasile (adică Ion are strategie sigură de câştig).
Cerinţă
Considerând că ambii jucători joacă optim, determinaţi toate nodurile din arbore pe care le poate colora Ion la prima mutare, astfel încât să fie sigur de victorie (nodurile câştigătoare).
Date de intrare
Prima linie a fişierului color.in conţine numărul întreg N, reprezentând numărul de noduri din arbore. Următoarele N-1 linii conţin câte două numere întregi separate printr-un spaţiu, a şi b, având semnificaţia că a este tatăl lui b.
Date de ieşire
Pe prima linie a fişierului color.out veţi afişa numărul întreg M, reprezentând numărul de noduri câştigătoare. Pe următoarea linie veţi afişa numerele acestor noduri, în ordine crescătoare.
Restricţii
• 1 <= N <= 16 000, N impar
• 40% din teste vor avea N <= 1 000