力扣题目链接:https://leetcode.cn/problems/check-if-a-string-is-an-acronym-of-words/
给你一个字符串数组?words
和一个字符串 s
,请你判断 s
是不是 words
的 首字母缩略词 。
如果可以按顺序串联 words
中每个字符串的第一个字符形成字符串 s
,则认为 s
是 words
的首字母缩略词。例如,"ab"
可以由 ["apple", "banana"]
形成,但是无法从 ["bear", "aardvark"]
形成。
如果 s
是 words
的首字母缩略词,返回 true
;否则,返回 false
。
?
示例 1:
输入:words = ["alice","bob","charlie"], s = "abc" 输出:true 解释:words 中 "alice"、"bob" 和 "charlie" 的第一个字符分别是 'a'、'b' 和 'c'。因此,s = "abc" 是首字母缩略词。
示例 2:
输入:words = ["an","apple"], s = "a" 输出:false 解释:words 中 "an" 和 "apple" 的第一个字符分别是 'a' 和 'a'。 串联这些字符形成的首字母缩略词是 "aa" 。 因此,s = "a" 不是首字母缩略词。
示例 3:
输入:words = ["never","gonna","give","up","on","you"], s = "ngguoy" 输出:true 解释:串联数组 words 中每个字符串的第一个字符,得到字符串 "ngguoy" 。 因此,s = "ngguoy" 是首字母缩略词。
?
提示:
1 <= words.length <= 100
1 <= words[i].length <= 10
1 <= s.length <= 100
words[i]
和 s
由小写英文字母组成首先看字符串和单词数组是否等长,若不等长直接返回false
。
接着枚举字符串的每一位,如果这个字符与对应单词的首字母不同,则返回false
。
遍历完成后,返回true
。
class Solution {
public:
bool isAcronym(vector<string>& words, string s) {
if (s.size() != words.size()) {
return false;
}
for (int i = 0; i < s.size(); i++) {
if (s[i] != words[i][0]) {
return false;
}
}
return true;
}
};
# from typing import List
class Solution:
def isAcronym(self, words: List[str], s: str) -> bool:
if len(s) != len(words):
return False
for i in range(len(s)):
if s[i] != words[i][0]:
return False
return True
同步发文于CSDN,原创不易,转载经作者同意后请附上原文链接哦~
Tisfy:https://letmefly.blog.csdn.net/article/details/135106811