ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Leetcode-5018 Camelcase Matching(驼峰式匹配)

2019-04-07 13:37:37  阅读:216  来源: 互联网

标签:qin pin Camelcase 5018 pattern ++ queries Leetcode size


 1 class Solution
 2 {
 3     public:
 4         vector<bool> camelMatch(vector<string>& queries, string pattern)
 5         {
 6             vector<bool> rnt(queries.size());
 7 
 8             for(int i = 0; i < queries.size(); i ++)
 9             {
10                 int qin = 0,pin = 0;
11                 bool rr = true;
12                 
13                 string ss1,ss2;
14                 for(int j = 0;j < queries[i].size();j ++)
15                     if(isupper(queries[i][j]))
16                         ss1 += queries[i][j];
17                 for(int j = 0;j < pattern.size();j ++)
18                     if(isupper(pattern[j]))
19                         ss2 += pattern[j];
20                 if(ss1!=ss2)
21                 {
22                     rnt[i] = false;
23                     continue;
24                 }
25                 while(qin < queries[i].size() && pin < pattern.size())
26                 {
27                     if(isupper(queries[i][qin]) && islower(pattern[pin]))
28                     {
29                         rr = false;
30                         break;
31                     }
32                     else if(isupper(queries[i][qin]) && isupper(pattern[pin]))
33                     {
34                         if(queries[i][qin]==pattern[pin])
35                         {
36                             qin ++;
37                             pin ++;
38                         }
39                         else
40                         {
41                             rr = false;
42                             break;
43                         }
44                     }
45                     else if(islower(queries[i][qin]) && isupper(pattern[pin]))
46                         qin ++;
47                     else
48                     {
49                         if(queries[i][qin]==pattern[pin])
50                         {
51                             qin ++;
52                             pin ++;
53                         }
54                         else
55                             qin ++;    
56                     }
57                 }
58                 
59                 int sz = pattern.size();
60                 if(pin<sz)
61                     rr = false;
62                 rnt[i] = rr;
63             }
64             return rnt;
65         }
66 };

想一套匹配规则去遍历匹配就可以了,写了几十分钟,不知道在写什么

标签:qin,pin,Camelcase,5018,pattern,++,queries,Leetcode,size
来源: https://www.cnblogs.com/Asurudo/p/10665075.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有