520.检测大写字母

132 阅读1分钟

题目:
我们定义,在以下情况时,单词的大写用法是正确的:

  • 全部字母都是大写,比如 "USA" 。
  • 单词中所有字母都不是大写,比如 "leetcode" 。
  • 如果单词不只含有一个字母,只有首字母大写, 比如 "Google" 。

给你一个字符串 word 。如果大写用法正确,返回 true ;否则,返回 false 。
算法:

func detectCapitalUse(word string) bool {
	upperCnt := 0
	for i := range word {
		if isUpper(word[i]) {
			upperCnt ++
		}
	}

	if upperCnt == 0 || upperCnt == len(word) || (upperCnt == 1 && isUpper(word[0]) ){
		return true
	} 
	return  false
}
func isUpper(s byte) bool {
	return 'A' <= s && s <= 'Z'
}