The thief has found himself a new place for his thievery again. There is only one entrance to this area, called root.
Besides the root, each house has one and only one parent house. After a tour, the smart thief realised that all houses in this place form a binary tree. It will automatically contact the police if two directly-linked houses were broken into on the same night.
Given the root of the binary tree, return the maximum amount of money the thief can rob without alerting the police.
[1, 10^4]0 <= Node.val <= 10^4root = [3,2,3,null,3,null,1]7root = [3,4,5,1,3,null,1]9