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.
注意选择语句条件。
代码如下:
class Solution {
public:
bool detectCapitalUse(string word) {
int n = word.length();
int flag = 0;
if(isupper(word[0]))
flag = 1;
if(flag == 0){
for(int i = 1; i < n; i++)
if(isupper(word[i]))
return false;
}
else{
for(int i = 1; i < n; i++){
if(i == 1){
if(isupper(word[i]))
flag = 2;
}
else{
if(flag == 1){
if(isupper(word[i]))
return false;
}
else{
if(!isupper(word[i]))
return false;
}
}
}
}
return true;
}
};