闯关leetcode——3136. Valid Word
题目地址
https://leetcode.com/problems/valid-word/description/
内容
A word is considered valid if:
[*]It contains a minimum of 3 characters.
[*]It contains only digits (0-9), and English letters (uppercase and lowercase).
[*]It includes at least one vowel.
[*]It includes at least one consonant.
You are given a string word.
Return true if word is valid, otherwise, return false.
Notes:
[*]‘a’, ‘e’, ‘i’, ‘o’, ‘u’, and their uppercases are vowels.
[*]A consonant is an English letter that is not a vowel.
Example 1:
Input: word = “234Adas”
Output: true
Explanation:
This word satisfies the conditions.
Example 2:
Input: word = “b3”
Output: false
Explanation:
The length of this word is fewer than 3, and does not have a vowel.
Example 3:
Input: word = "a3 e " O u t p u t : f a l s e E x p l a n a t i o n : T h i s w o r d c o n t a i n s a ′ e" Output: false Explanation: This word contains a ' e"Output:falseExplanation:Thiswordcontainsa′’ character and does not have a consonant.
Constraints:
[*]1 <= word.length <= 20
[*]word consists of English uppercase and lowercase letters, digits, ‘@’, ‘#’, and ‘$’.
解题
这题要检测一个数是否符合以下特点:
[*]至少包罗3个字符
[*]只能包罗大小写字母和数字
[*]至少有一个a、e、i、o、u大写或小写的字母
[*]至少包罗一个非a、e、i、o、u大写或小写的字母
解法也很简朴,按这些条件把规则写好即可。
#include <string>
using namespace std;
class Solution {
public:
bool isValid(string word) {
if (word.size() < 3) {
return false;
}
bool vowel = false;
bool consonant = false;
for (char c : word) {
if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'
|| c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
vowel = true;
} else if ( (c >= 'a' && c <= 'z')
|| (c >= 'A' && c <= 'Z'))
{
consonant = true;
}
else if (c >= '0' && c <= '9') {
continue;
}
else {
return false;
}
}
return vowel && consonant;
}
};
https://i-blog.csdnimg.cn/direct/c74994909346478a9c16d5b1aa30bc6a.png
代码地址
https://github.com/f304646673/leetcode/tree/main/3136-Valid-Word/cplusplus
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]