day19, 通过删除字母匹配到字典里最长单词
题目来源:leetcode
给定一个字符串和一个字符串字典,找到字典里面最长的字符串,该字符串可以通过删除给定字符串的某些字符来得到。如果答案不止一个,返回长度最长且字典顺序最小的字符串。如果答案不存在,则返回空字符串。
示例 1:
输入:
s = “abpcplea”, d = [“ale”,“apple”,“monkey”,“plea”]
输出:
“apple”
示例 2:
输入:
s = “abpcplea”, d = [“a”,“b”,“c”]
输出:
“a”
解答:这道题关键在于排序。首先明确排序的规则,首先是按照字符串从大到小排序,当字符串大小相等时候,按照字典序排列。
排序好之后,从头开始遍历,对于每一个字符串d[i],分别与s进行匹配即可。
代码:
string findLongestWord(string s, vector<string>& d