闯关leetcode——3136. Valid Word

打印 上一主题 下一主题

主题 822|帖子 822|积分 2468

题目

地址

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大写或小写的字母
解法也很简朴,按这些条件把规则写好即可。
  1. #include <string>
  2. using namespace std;
  3. class Solution {
  4. public:
  5.     bool isValid(string word) {
  6.         if (word.size() < 3) {
  7.             return false;
  8.         }
  9.         bool vowel = false;
  10.         bool consonant = false;
  11.         for (char c : word) {
  12.             if (c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u'
  13.             || c == 'A' || c == 'E' || c == 'I' || c == 'O' || c == 'U') {
  14.                 vowel = true;
  15.             } else if ( (c >= 'a' && c <= 'z')
  16.                 || (c >= 'A' && c <= 'Z'))
  17.             {
  18.                 consonant = true;
  19.             }
  20.             else if (c >= '0' && c <= '9') {
  21.                 continue;
  22.             }
  23.             else {
  24.                 return false;
  25.             }
  26.         }
  27.         return vowel && consonant;
  28.     }
  29. };
复制代码

代码地址

https://github.com/f304646673/leetcode/tree/main/3136-Valid-Word/cplusplus

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

南七星之家

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表