Find The Difference Problem


Description

LeetCode Problem 389.

You are given two strings s and t.

String t is generated by random shuffling string s and then add one more letter at a random position.

Return the letter that was added to t.

Example 1:

1
2
3
Input: s = "abcd", t = "abcde"
Output: "e"
Explanation: 'e' is the letter that was added.

Example 2:

1
2
Input: s = "", t = "y"
Output: "y"

Example 3:

1
2
Input: s = "a", t = "aa"
Output: "a"

Example 4:

1
2
Input: s = "ae", t = "aea"
Output: "a"

Constraints:

  • 0 <= s.length <= 1000
  • t.length == s.length + 1
  • s and t consist of lower-case English letters.


Sample C++ Code

1
2
3
4
5
6
7
8
9
10
11
12
13
14
class Solution {
public:
    char findTheDifference(string s, string t) {
        int n = 0;
        for (int i = 0; i < s.size(); i ++) {
            n ^= (s[i] - 'a');
        }
        for (int i = 0; i < t.size(); i ++) {
            n ^= (t[i] - 'a');
        }
        char c = (char)('a' + n);
        return c;
    }
};




Related Posts

Bulb Switcher II Problem

LeetCode 672. There is a room with n bulbs labeled...

Binary Number With Alternating Bits Problem

LeetCode 693. Given a positive integer, check whether it has...

Total Hamming Distance Problem

LeetCode 477. The Hamming distance between two integers is the...

Number Complement Problem

LeetCode 476. The complement of an integer is the integer...

Hamming Distance Problem

LeetCode 461. The Hamming distance between two integers is the...

Convert A Number To Hexadecimal Problem

LeetCode 405. Given an integer num, return a string representing...