Super Easy (with 100% runtime)
Intuition\nAlright, imagine you have two sentences and you\u2019re on a mission to find those rare words that show up only once, and not just once in total but 
# Intuition\nAlright, imagine you have two sentences and you\u2019re on a mission to find those rare words that show up only once, and not just once in total but in one sentence and not in the other. It\'s like searching for the lone wolf in a forest of wolves. The tricky part is that these sentences could be long, and you need to check every single word efficiently. So, how do you find these rare words without losing your mind?\n# Approach\nHere\u2019s a simple game plan:\n    1) Break It Down: Split each sentence into individual words. This is like chopping up a pizza into slices.\n    2)Count the Words: Use a map (or dictionary if you prefer) to keep track of how many times each word appears across both sentences. If a word shows up in both sentences, it\u2019s not uncommon, so we only care about words that appear once in either sentence.\n    3)Filter and Collect: Go through your map and pick out those words that show up exactly once.\n\nSteps:\n\n    1)Parsing: Read through both sentences and collect each word.\n    2)Counting: Track the occurrence of each word.\n    3)Filtering: Select words that are unique to either of the sentences.\n# Complexity\n- Time complexity:\n    Let\u2019s call this $$O(n + m)$$, where n is the length of the first      sentence and m is the length of the second. Why? Because you\'re essentially scanning through both sentences to split them into words and count them. Pretty straightforward!\n\n\n\n- Space complexity:\nThis is $$O(u)$$, where u is the number of unique words across both sentences. This is because the space needed depends on the number of unique words you\u2019re storing in your map.\n\n# Code\n```cpp []\nclass Solution {\npublic:\n    vector<string> uncommonFromSentences(string s1, string s2) {\n        map<string,int> ss1;  // Our trusty map to count occurrences\n        int n = s1.size();  // Length of the first sentence\n        int m = s2.size();  // Length of the second sentence\n        int i = 0;\n\n        // Parse first sentence\n        while(i < n) {\n            string sub1;\n            while(i < n && !isspace(s1[i])) {\n                sub1.push_back(s1[i]);  // Collect characters into a word\n                i++;\n            }\n            ss1[sub1]++;  // Increase count for this word\n            i++;  // Skip the space\n        }\n\n        int j = 0;\n        // Parse second sentence\n        while(j < m) {\n            string sub2;\n            while(j < m && !isspace(s2[j])) {\n                sub2.push_back(s2[j]);  // Collect characters into a word\n                j++;\n            }\n            ss1[sub2]++;  // Increase count for this word\n            j++;  // Skip the space\n        }\n\n        vector<string> ans;\n        // Collect words that appear exactly once\n        for(auto p : ss1) {\n            if(p.second == 1) {\n                ans.push_back(p.first);  // Add to result if it\'s uncommon\n            }\n        }\n\n        return ans;  // Return the list of uncommon words\n    }\n};\n\n\n//can ignore following private part.\nprivate:\n#pragma GCC target("avx, mmx, sse2, sse3, sse4")  // Setting up for some serious processing power!\n\nstatic const int disableSync = [](void) noexcept -> int\n{\n    std::ios::sync_with_stdio(false);  // Speed things up by turning off sync with C I/O\n    std::cin.tie(nullptr);  // Don\'t tie input and output streams\n    std::cout.tie(nullptr);  // Let output stream be free\n    return 0;\n}();\n\n```
['C++']