Given a word, you need to judge whether the usage of capitals in it is right or not.
We define the usage of capitals in a word to be right when one of the following cases holds:
- All letters in this word are capitals, like "USA".
- All letters in this word are not capitals, like "leetcode".
- Only the first letter in this word is capital if it has more than one letter, like "Google".
Example 1:
Input: "USA" Output: True
Example 2:
Input: "FlaG" Output: False
Note: The input will be a non-empty word consisting of uppercase and lowercase latin letters.
谷歌翻译:给定一个词,你需要判断它中的资本的使用是否正确。当以下情况之一存在时,我们将单词中资本的使用定义为正确:这个单词中的所有字母都是大写,如“USA”。这个单词中的所有字母都不是大写,例如“leetcode”。只有此字中的第一个字母是大写,如果它有多个字母,如“Google”。否则,我们定义这个词不以正确的方式使用大写。
实施例1:输入:“USA”输出:True
实施例2:输入:“FlaG”输出:False
注意:输入将是由大写和小写拉丁字母组成的非空字。
public:
bool detectCapitalUse(string word) {
if (word.length() <= 1)
return true;
if (islower(word[0]) || (isupper(word[0]) && islower(word[1])))
{
for (int i = 1; i < word.length(); i++)
if (isupper(word[i]))
return false;
}
else
{
for (int i = 1; i < word.length(); i++)
if (islower(word[i]))
return false;
}
return true;
}
};
判断word[0]和word[1]的大小写,如果word[0]是小写,那后面必须是小写,如果word[0]是大写word[1]是小写,那后面也必须是小写,如果word[0]是大写word[1]也是大写那么后面必须都是大写.