# 520.Detect Capital(String-Easy)

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”.

Otherwise, we define that this word doesn’t use capitals in a right way.

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.

a) C++

初始化一个记录字符串中含有大写字符数量的变量。遍历字符串的每一个字符，如果字符为大写字母，则大写字母计数变量计数一次（加一）。

• 大写字母计数变量为0（全为小写字母）；
• 大写字母计数变量为字符串长度（全为大写字母）；
• 大写字母计数变量为1且字符串首字符为大写(只有首字母大写，其余字母小写 )。

b) Python

Python提供了可以直接调用的API接口：

• isupper() 方法检测字符串中所有的字母是否都为大写；
• islower() 方法检测字符串是否由小写字母组成；
• istitle() 方法检测字符串中所有的单词拼写首字母是否为大写，且其他字母为小写。

Language : cpp

```class Solution {
public:
bool detectCapitalUse(string word) {
int cnt = 0;
for(char c: word) {
if('Z' - c >= 0){
cnt++;
}
}
return ((cnt == 0 || cnt == word.length() || (cnt == 1 && 'Z' - word[0] >= 0)));
}
};```

Language : python

```class Solution(object):
def detectCapitalUse(self, word):
"""
:type word: str
:rtype: bool
"""
return word.isupper() or word.islower() or word.istitle()```

Github的LeetCode项目

0 条评论

31450

14620

17120

13830

14020

10410

21990

14020

374100

31710