// https :// leetcode . com / problems / two - sum - iv - input - is - a - bst / Ċ class ĠTwo Sum Four Ġ{ ĊĠĠĠ Ġclass ĠTreeNode ( var Ġ` val `: ĠInt , Ġvar Ġleft : ĠTreeNode ? Ġ, Ġvar Ġright : ĠTreeNode ?) ĊĊĠĠĠ Ġfun Ġfind Target ( root : ĠTreeNode ?, Ġk : ĠInt ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġall Values Ġ= Ġmutable Set Of < Int >() ĊĠĠĠĠĠĠĠ Ġtraverse ( root , all Values ) ĊĠĠĠĠĠĠĠ Ġreturn Ġall Values . any Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġit Ġ!= Ġk / 2 Ġ&& Ġall Values . contains ( k - it ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġtraverse ( tree Node : ĠTreeNode ?, Ġset : ĠMutable Set < Int >) Ġ{ ĊĠĠĠĠĠĠĠ Ġif Ġ( tree Node Ġ== Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġset . add ( tree Node .` val `) ĊĠĠĠĠĠĠĠ Ġtraverse ( tree Node . left , set ) ĊĠĠĠĠĠĠĠ Ġtraverse ( tree Node . right , set ) ĊĠĠĠ Ġ} Ċ }