题目
假设Andy和Doris想在晚餐时选择一家餐厅,并且他们都有一个表示最喜爱餐厅的列表,每个餐厅的名字用字符串表示。你需要帮助他们用最少的索引和找出他们共同喜爱的餐厅。 如果答案不止一个,则输出所有答案并且不考虑顺序。 你可以假设总是存在一个答案。
实例
输入:
["Shogun", "Tapioca Express", "Burger King", "KFC"]
["KFC", "Shogun", "Burger King"]
输出:
["Shogun"]
解释: 他们共同喜爱且具有最小索引和的餐厅是“Shogun”,它有最小的索引和1(0+1)。
代码
class Solution:
def findRestaurant(self, list1: List[str], list2: List[str]) -> List[str]:
d = {x:list1.index(x) + list2.index(x) for x in set(list1) & set(list2)}
return[x for x in d if d[x] == min(d.values())]
使用列表生成式 高级特性 https://www.liaoxuefeng.com/wiki/1016959663602400/1017317609699776