How to check if a tree is a binary search tree?
Someone in a Telegram chat
Binary search tree is a rooted tree, in which:
You are given a tree with n vertices. Can this tree, being rooted at some vertex, be a binary search tree, and if it can, what vertices can be a root?
The first line contains an integer n (1≤n≤500000) --- the number of vertices in the tree.
Each of the next n−1 lines contains two integers u_i and v_i (1≤u_i,v_i≤n) --- the edges of the tree.
If this tree can't be a binary search tree, output "-1".
Otherwise, output all vertices that can be a root, in increasing order.