首页 > 其他分享 >【118】

【118】

时间:2022-11-08 09:45:12浏览次数:36  
标签:String int res words allowed 字符串 118

1684. 统计一致字符串的数目  

给你一个由不同字符组成的字符串 allowed 和一个字符串数组 words 。如果一个字符串的每一个字符都在 allowed 中,就称这个字符串是 一致字符串 。

请你返回 words 数组中 一致字符串 的数目。

 

示例 1:

输入:allowed = "ab", words = ["ad","bd","aaab","baa","badab"]
输出:2
解释:字符串 "aaab" 和 "baa" 都是一致字符串,因为它们只包含字符 'a' 和 'b' 。

示例 2:

输入:allowed = "abc", words = ["a","b","c","ab","ac","bc","abc"]
输出:7
解释:所有字符串都是一致的。

示例 3:

输入:allowed = "cad", words = ["cc","acd","b","ba","bac","bad","ac","d"]
输出:4
解释:字符串 "cc","acd","ac" 和 "d" 是一致字符串。

 

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用正则表达式没做出来,之后复习下正则相关

 1 class Solution {
 2     public int countConsistentStrings(String allowed, String[] words) {
 3         StringBuilder pattern = new StringBuilder();
 4         pattern.append("[");
 5         for(int i = 0; i < allowed.length(); i++){
 6             pattern.append(allowed.charAt(i));
 7         }
 8         pattern.append("]");
 9         String pattern1 = pattern.toString();
10         int res = 0;
11         for(String word : words){
12             if(word.matches(pattern1) == true){
13                 res++;
14             }
15         }
16         return res;
17     }
18 }

 

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

使用遍历暴力求解

 1 class Solution {
 2     public int countConsistentStrings(String allowed, String[] words) {
 3         int res = words.length;
 4         for(int i = 0; i < words.length; i++){
 5             for(char ch : words[i].toCharArray()){
 6                 if(!allowed.contains(String.valueOf(ch))){//匹配到一个不包含的就跳出循环
 7                     res--;
 8                     break;
 9                 }
10             }
11         }
12         return res;
13     }
14 }

 

标签:String,int,res,words,allowed,字符串,118
From: https://www.cnblogs.com/wzxxhlyl/p/16868616.html

相关文章

  • Educational Codeforces Round 118 D
    D.MEXSequences对于一个数x要是前面出现过0,1,2...x-1我们显然可以将他放在后面要是前面出现过012...x-1x我们也可以将他放在后面但是观察样例还有一种情况......
  • leetcode-118-easy
    Pascal'sTriangleGivenanintegernumRows,returnthefirstnumRowsofPascal'striangle.InPascal'striangle,eachnumberisthesumofthetwonumbersdir......
  • ctfshow web118(利用系统环境变量拼接命令)
    full以后发现题目给了如下字符(几个特殊字符+大写英文字母)我们利用系统环境变量来构造我们需要的命令:${PATH:~A}${PWD:~A}${IFS}????????===nlflag.php自己本地试试......
  • BZOJ 1185([HNOI2007]最小矩形覆盖-旋转卡壳+点集几何意义)
    1185:[HNOI2007]最小矩形覆盖TimeLimit: 10Sec  MemoryLimit: 162MBSec  SpecialJudgeSubmit: 258  Solved: 137Description l要事先改成......
  • BZOJ 1189([HNOI2007]紧急疏散evacuate-网络流二分+拆点)
    发生了火警,所有人员需要紧急疏散!假设每个房间是一个NM的矩形区域。每个格子如果是’.’,那么表示这是一块空地;如果是’X’,那么表示这是一面墙,如果是’D’,那么表示这是一扇门......
  • CF1188A2
    首先题目中每条边权值互不相同,于是A1的结论依旧适用:有解当且仅当树中不存在度数为\(2\)的点。必要性很好证,度数为二的点不会是叶子,那么每条经过该点修改的路径一定同......
  • CF1188C
    又一次错过了单杀*2500的机会,不知道该说什么了。。先把\(a\)排序,不会影响答案。考虑枚举答案\(v\),计算有多少种选择子序列的方法使得答案为\(v\)。这不太好做,考虑......
  • 电力系统机组组合优化调度(IEEE14节点、IEEE30节点、IEEE118节点)
           目录​​1概述​​​​2知识点学习​​​​3运行结果​​​​3.1算例1——IEEE14节点​​​​3.2算例2——IEEE30节点​​​​ 3.3算例3——IEE......
  • P1186 玛丽卡
    #include<bits/stdc++.h>usingnamespacestd;constintinf=0x3f3f3f3f;intn,m;intd1[10001];intd2[10001];intv[10001];intd[10001];intpt[10001];intto......
  • F118校准步骤(一)-- 安装CA310驱动程序及SDK
    下载Ca310_drv.zip文件并解压,备用。 http://www.xk-image.com/download/blog/0001_F118校准/Ca310_drv.zip准备好CA310设备: 连接电源,探头,以及USB接口(USB线另一端连接......