Leetcode练习(Python):第520题:检测大写字母:给定一个单词,你需要判断单词的大写使用是否正确。 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。 否则,我们定义这个单词没有正确使用大写字母。
题目:
检测大写字母:给定一个单词,你需要判断单词的大写使用是否正确。 我们定义,在以下情况时,单词的大写用法是正确的: 全部字母都是大写,比如"USA"。 单词中所有字母都不是大写,比如"leetcode"。 如果单词不只含有一个字母,只有首字母大写, 比如 "Google"。 否则,我们定义这个单词没有正确使用大写字母。
示例 1:
输入: "USA" 输出: True
示例 2:
输入: "FlaG" 输出: False
注意: 输入是由大写和小写拉丁字母组成的非空单词。
思路:
情况二和三一样,只需要单独判断下情况一就可以。
程序:
class Solution:
def detectCapitalUse(self, word: str) -> bool:
if not word:
return False
if len(word) == 1:
return True
counter = 0
for index in range(1, len(word)):
if word[index] >= 'A' and word[index] <= 'Z':
counter += 1
if counter == index or counter == 0:
continue
else:
return False
if counter == 0:
return True
if counter == len(word) - 1:
if word[0] >= 'A' and word[0] <= 'Z':
return True
else:
return False
浙公网安备 33010602011771号