From 185ef9fcb0e59f13e9ee0ccb261693cdaddebab0 Mon Sep 17 00:00:00 2001 From: crupest Date: Tue, 23 Feb 2021 21:07:19 +0800 Subject: import(solutions): Move leetcode solutions to subdir. --- works/solutions/leetcode/cpp/1370.cpp | 45 +++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 works/solutions/leetcode/cpp/1370.cpp (limited to 'works/solutions/leetcode/cpp/1370.cpp') diff --git a/works/solutions/leetcode/cpp/1370.cpp b/works/solutions/leetcode/cpp/1370.cpp new file mode 100644 index 0000000..9741d48 --- /dev/null +++ b/works/solutions/leetcode/cpp/1370.cpp @@ -0,0 +1,45 @@ +#include + +using std::string; + +class Solution +{ +public: + string sortString(string s) + { + int count[26]{0}; + + for (auto c : s) + { + count[c - 'a']++; + } + + int total_count = s.size(); + string result; + + while (total_count) + { + for (int i = 0; i < 26; i++) + { + if (count[i]) + { + count[i]--; + total_count--; + result.push_back(i + 'a'); + } + } + + for (int i = 25; i >= 0; i--) + { + if (count[i]) + { + count[i]--; + total_count--; + result.push_back(i + 'a'); + } + } + } + + return result; + } +}; -- cgit v1.2.3