39 lines
919 B
C++
39 lines
919 B
C++
// Source : https://leetcode.com/problems/find-the-difference/
|
|
// Author : Hao Chen
|
|
// Date : 2016-09-08
|
|
|
|
/***************************************************************************************
|
|
*
|
|
* Given two strings s and t which consist of only lowercase letters.
|
|
*
|
|
* String t is generated by random shuffling string s and then add one more letter at a
|
|
* random position.
|
|
*
|
|
* Find the letter that was added in t.
|
|
*
|
|
* Example:
|
|
*
|
|
* Input:
|
|
* s = "abcd"
|
|
* t = "abcde"
|
|
*
|
|
* Output:
|
|
* e
|
|
*
|
|
* Explanation:
|
|
* 'e' is the letter that was added.
|
|
***************************************************************************************/
|
|
|
|
class Solution {
|
|
public:
|
|
char findTheDifference(string s, string t) {
|
|
unordered_map<char, int> m;
|
|
for(auto c : s) m[c]++;
|
|
for(auto c : t) {
|
|
m[c]--;
|
|
if (m[c] < 0) return c;
|
|
}
|
|
return '\0';
|
|
}
|
|
};
|