1 条题解

  • 1
    @ 2025-2-20 9:19:12
    #include <string>
    using namespace std;
    // 检查字符是否为元音字母
    bool isVowel(char c) //isVowel 函数:接受一个字符作为参数
    {
        c = tolower(c);//将其转换为小写字母(使用 tolower 函数) 
        //然后检查该字符是否为元音字母(a、e、i、o、u),如果是则返回 true,否则返回 false 
        return c == 'a' || c == 'e' || c == 'i' || c == 'o' || c == 'u';
    }
    
    int main() {
        string s;
        cin >> s;
    
        int len = s.length();//获取字符串 s 的长度
        if (len % 2 != 0 || len > 1000) return 1; //检查字符串长度是否为偶数且不超过 1000 个字符,如果不满足条件则返回错误码 1。
    
        int mid = len / 2;//计算字符串的中间位置
        int count1 = 0, count2 = 0;//定义两个变量 count1 和 count2 
    	//分别用于统计字符串前半部分和后半部分的元音字母数量。
    
        for (int i = 0; i < mid; i++) {
            if (isVowel(s[i])) count1++;
        }//遍历字符串的前半部分,调用 isVowel 函数检查每个字符是否为元音字母,如果是则 count1 加 1。
        for (int i = mid; i < len; i++) {
            if (isVowel(s[i])) count2++;
        }
    
        if (count1 == count2) {
            std::cout << "YES";
        } else {
            std::cout << "NO";
        }
    
        return 0;
    }
    
    
    • 1

    信息

    ID
    2113
    时间
    1000ms
    内存
    256MiB
    难度
    3
    标签
    递交数
    45
    已通过
    12
    上传者