延庆网站建设,设计国外网站,安卓studio制作一个简单app,青羊区建设网站520. 检测大写字母
我们定义#xff0c;在以下情况时#xff0c;单词的大写用法是正确的#xff1a;
全部字母都是大写#xff0c;比如 “USA” 。单词中所有字母都不是大写#xff0c;比如 “leetcode” 。如果单词不只含有一个字母#xff0c;只有首字母大写#xf…520. 检测大写字母
我们定义在以下情况时单词的大写用法是正确的
全部字母都是大写比如 “USA” 。单词中所有字母都不是大写比如 “leetcode” 。如果单词不只含有一个字母只有首字母大写 比如 “Google” 。 给你一个字符串 word 。如果大写用法正确返回 true 否则返回 false 。 示例 1
输入word “USA” 输出true 示例 2
输入word “FlaG” 输出false
提示
1 word.length 100 word 由小写和大写英文字母组成
解题思路
分类讨论
当只有一个字符时必然是大写用法正确当首字母是小写时后面的字母不能出现大写当首字母是大写时后面字母不能出现既有大写又有小写的情况
代码
class Solution {
public:bool detectCapitalUse(string word) {if(word.size()1) return true;if (islower(word[0])){for (auto c:word)if(isupper(c))return false;return true;}else {bool up(false),low(false);for (int i 1; i word.size(); i) {if(isupper(word[i]))uptrue;else low true;}return (up^low);}}
};