[LeetCode&Python] Problem 884. Uncommon Words from Two Sentences

We are given two sentences A and B.  (A sentence is a string of space separated words.  Each word consists only of lowercase letters.)

A word is uncommon if it appears exactly once in one of the sentences, and does not appear in the other sentence.

Return a list of all uncommon words. 

You may return the list in any order.

 

Example 1:

Input: A = "this apple is sweet", B = "this apple is sour"
Output: ["sweet","sour"]

Example 2:

Input: A = "apple apple", B = "banana"
Output: ["banana"]

 

Note:

  1. 0 <= A.length <= 200
  2. 0 <= B.length <= 200
  3. A and B both contain only spaces and lowercase letters.
class Solution:
    def uncommonFromSentences(self, A, B):
        """
        :type A: str
        :type B: str
        :rtype: List[str]
        """
        listA=A.split(' ')
        listB=B.split(' ')
        
        ans=[]
        
        nA=len(listA)
        nB=len(listB)
        
        for i in range(nA):
            ch=listA[i]
            if not ch in listB and not ch in (listA[:i]+listA[i+1:]):
                ans.append(ch)
                
        for j in range(nB):
            ch=listB[j]
            if not ch in listA and not ch in (listB[:j]+listB[j+1:]):
                ans.append(ch)
                
        return ans

  

posted on 2018-10-08 12:20  chiyeung  阅读(288)  评论(0编辑  收藏  举报

导航