leetcode 520. Detect Capital
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.
WA:(未考虑字母的位置关系)
bool detectCapitalUse(char* word) {
int length=strlen(word);
int result=0;
for(int i=0;i<length;i++)
{
if(word[i]>='a'&&word[i]<='z')
{
result+=1;
}
else if(word[i]>='A'&&word[i]<='Z')
{
result+=2;
}
}
if(result==length||result==2*length||result==length+1)
{
return true;
}
else
{
return false;
}
}
AC:
bool detectCapitalUse(char* word) {
int length=strlen(word);
int result=0;
for(int i=0;i<length;i++)
{
if(word[i]>='a'&&word[i]<='z')
{
result+=1;
}
else if(word[i]>='A'&&word[i]<='Z')
{
result+=2;
}
}
if(result==length||result==2*length)
{
return true;
}
else if(result==length+1)
{
return word[0]>='A'&&word[0]<='Z';
}
else
{
return false;
}
}