zoukankan      html  css  js  c++  java
  • #Leetcode# 524. Longest Word in Dictionary through Deleting

    https://leetcode.com/problems/longest-word-in-dictionary-through-deleting/

    Given a string and a string dictionary, find the longest string in the dictionary that can be formed by deleting some characters of the given string. If there are more than one possible results, return the longest word with the smallest lexicographical order. If there is no possible result, return the empty string.

    Example 1:

    Input:
    s = "abpcplea", d = ["ale","apple","monkey","plea"]
    
    Output: 
    "apple"
    

    Example 2:

    Input:
    s = "abpcplea", d = ["a","b","c"]
    
    Output: 
    "a"
    

    Note:

    1. All the strings in the input will only contain lower-case letters.
    2. The size of the dictionary won't exceed 1,000.
    3. The length of all the strings in the input won't exceed 1,000.

    代码:

    class Solution {
    public:
        string findLongestWord(string s, vector<string>& d) {
            sort(d.begin(), d.end(), [](string a, string b){
                if (a.size() == b.size()) return a < b;
                return a.size() > b.size();
            });
            int ls = s.length();
           for(int i = 0; i < d.size(); i ++) {
               int cnt = 0;
               for(int j = 0; j < s.size(); j ++) {
                   if(cnt < d[i].size() && s[j] == d[i][cnt]) ++ cnt;
               }
               if(cnt == d[i].size()) return d[i];
           }
            return "";
        }
    };
    

      天气刚好 

  • 相关阅读:
    事件记录
    C++和extern C
    中断控制器
    NAND FLASH控制器
    MMU实验
    存储管理器实验
    GPIO实验
    linux与Windows使用编译区别及makefile文件编写
    ubuntu如何为获得root权限
    VI常用命令及linux下软件
  • 原文地址:https://www.cnblogs.com/zlrrrr/p/10713211.html
Copyright © 2011-2022 走看看