From e5549fb0dd9b9c77e980df080b57bfa52939821c Mon Sep 17 00:00:00 2001 From: eat-swap Date: Sat, 16 Apr 2022 17:27:10 +0800 Subject: [PATCH] add: 220416 [cpp] --- cpp/2204/220416.cpp | 52 ++++++++++++++++++++++----------------------- 1 file changed, 26 insertions(+), 26 deletions(-) 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; + } +};