diff --git a/cpp/2204/220416.cpp b/cpp/2204/220416.cpp index b90a5df..3105e44 100644 --- a/cpp/2204/220416.cpp +++ b/cpp/2204/220416.cpp @@ -1,26 +1,26 @@ -#include - -struct TreeNode { - int val; - TreeNode* left; - TreeNode* right; - explicit TreeNode(int x, TreeNode* left = nullptr, TreeNode* right = nullptr) : val(x), left(left), right(right) {} -}; - -class Solution { -public: - static TreeNode* convertBST(TreeNode* root) { - if (!root) - return nullptr; - int x = 0; - std::function reversedInOrderTraverse = [&](TreeNode* r) { - if (r->right) - reversedInOrderTraverse(r->right); - r->val = (x += r->val); - if (r->left) - reversedInOrderTraverse(r->left); - }; - reversedInOrderTraverse(root); - return root; - } -}; +#include + +struct TreeNode { + int val; + TreeNode* left; + TreeNode* right; + explicit TreeNode(int x, TreeNode* left = nullptr, TreeNode* right = nullptr) : val(x), left(left), right(right) {} +}; + +class Solution { +public: + static TreeNode* convertBST(TreeNode* root) { + if (!root) + return nullptr; + int x = 0; + std::function reversedInOrderTraverse = [&](TreeNode* r) { + if (r->right) + reversedInOrderTraverse(r->right); + r->val = (x += r->val); + if (r->left) + reversedInOrderTraverse(r->left); + }; + reversedInOrderTraverse(root); + return root; + } +};