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/299.cpp | 44 ++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 store/works/solutions/leetcode/cpp/299.cpp (limited to 'store/works/solutions/leetcode/cpp/299.cpp') diff --git a/store/works/solutions/leetcode/cpp/299.cpp b/store/works/solutions/leetcode/cpp/299.cpp new file mode 100644 index 0000000..21c09b6 --- /dev/null +++ b/store/works/solutions/leetcode/cpp/299.cpp @@ -0,0 +1,44 @@ +#include + +using std::string; + +class Solution +{ +public: + string getHint(string secret, string guess) + { + int a = 0; + + int secret_digit_count[10] = {0}; + + auto secret_iter = secret.cbegin(); + auto guess_iter = guess.cbegin(); + + while (secret_iter != secret.cend()) + { + auto secret_digit = *secret_iter; + auto guess_digit = *guess_iter; + + secret_digit_count[secret_digit - '0']++; + + if (secret_digit == guess_digit) + a++; + + ++secret_iter; + ++guess_iter; + } + + int b = 0; + for (auto c : guess) + { + auto digit = c - '0'; + if (secret_digit_count[digit]) + { + b++; + secret_digit_count[digit]--; + } + } + + return std::to_string(a) + "A" + std::to_string(b - a) + "B"; + } +}; -- cgit v1.2.3