[C++] 0ms | Time O(N) | Space O(H) | Simple
\nclass Solution {\nprivate:\n    int p1,pl,pr,X;\npublic:\n    bool btreeGameWinningMove(TreeNode* root, int n, int x) {\n        if (n == 1) return false;\n  
```\nclass Solution {\nprivate:\n    int p1,pl,pr,X;\npublic:\n    bool btreeGameWinningMove(TreeNode* root, int n, int x) {\n        if (n == 1) return false;\n        p1 = pl = pr = 0; X = x;\n        dfs(root);\n        return (n - p1 > p1) || (pl > n - pl) || (pr > n - pr); \n    }\n    \n    int dfs(TreeNode* n) {\n        if (n == NULL) return 0;\n        if (n->val == X) {\n            pl = dfs(n->left); pr = dfs(n->right);\n            p1 = pl + pr + 1;\n            return p1;\n        }  \n        return dfs(n->left) + dfs(n->right) + 1;\n    }\n};\n```
[]