LeetCode/problems/merge-strings-alternately.cpp
Matej Focko 748624e5ee
problems(cpp): add “1768. Merge Strings Alternately”
Signed-off-by: Matej Focko <mfocko@redhat.com>
2023-04-19 00:17:54 +02:00

39 lines
784 B
C++

#include <cassert>
#include <string>
class Solution {
public:
std::string mergeAlternately(const std::string& word1, const std::string& word2)
{
std::string result;
auto l = word1.begin();
auto r = word2.begin();
for (; l != word1.end() && r != word2.end(); ++l, ++r) {
result += *l;
result += *r;
}
for (; l != word1.end(); ++l) {
result += *l;
}
for (; r != word2.end(); ++r) {
result += *r;
}
return result;
}
};
int main()
{
Solution s;
assert(s.mergeAlternately("abc", "pqr") == "apbqcr");
assert(s.mergeAlternately("ab", "pqrs") == "apbqrs");
assert(s.mergeAlternately("abcd", "pq") == "apbqcd");
return 0;
}