From dc1f0c4c0096013799416664894c5194dc7e1f52 Mon Sep 17 00:00:00 2001 From: Yuqian Yang Date: Fri, 28 Feb 2025 23:13:39 +0800 Subject: chore(store): move everything to store. --- store/works/solutions/leetcode/cpp/917.cpp | 45 ++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 store/works/solutions/leetcode/cpp/917.cpp (limited to 'store/works/solutions/leetcode/cpp/917.cpp') diff --git a/store/works/solutions/leetcode/cpp/917.cpp b/store/works/solutions/leetcode/cpp/917.cpp new file mode 100644 index 0000000..d01d795 --- /dev/null +++ b/store/works/solutions/leetcode/cpp/917.cpp @@ -0,0 +1,45 @@ +#include +#include +#include + +using std::string; + +class Solution +{ +public: + string reverseOnlyLetters(string s) + { + if (s.empty()) + return s; + + auto front = s.rend(); + auto back = s.end(); + + bool move_front = true; + while (true) + { + if (move_front) + { + if (std::isalpha(*--front)) + { + move_front = false; + } + } + else + { + if (std::isalpha(*--back)) + { + std::swap(*front, *back); + move_front = true; + } + } + + if (front.base() == back) + { + break; + } + } + + return s; + } +}; -- cgit v1.2.3