南七星之家 发表于 2025-1-6 11:22:14

闯关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]
查看完整版本: 闯关leetcode——3136. Valid Word