Welcome to Subscribe On Youtube

520. Detect Capital

Description

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, like "Google".

Given a string word, return true if the usage of capitals in it is right.

 

Example 1:

Input: word = "USA"
Output: true

Example 2:

Input: word = "FlaG"
Output: false

 

Constraints:

  • 1 <= word.length <= 100
  • word consists of lowercase and uppercase English letters.

Solutions

  • class Solution {
        public boolean detectCapitalUse(String word) {
            int cnt = 0;
            for (char c : word.toCharArray()) {
                if (Character.isUpperCase(c)) {
                    ++cnt;
                }
            }
            return cnt == 0 || cnt == word.length()
                || (cnt == 1 && Character.isUpperCase(word.charAt(0)));
        }
    }
    
  • class Solution {
    public:
        bool detectCapitalUse(string word) {
            int cnt = 0;
            for (char c : word)
                if (isupper(c)) ++cnt;
            return cnt == 0 || cnt == word.size() || (cnt == 1 && isupper(word[0]));
        }
    };
    
  • class Solution:
        def detectCapitalUse(self, word: str) -> bool:
            cnt = 0
            for c in word:
                if c.isupper():
                    cnt += 1
            return cnt == 0 or cnt == len(word) or (cnt == 1 and word[0].isupper())
    
    
  • func detectCapitalUse(word string) bool {
    	cnt := 0
    	for _, c := range word {
    		if unicode.IsUpper(c) {
    			cnt++
    		}
    	}
    	return cnt == 0 || cnt == len(word) || (cnt == 1 && unicode.IsUpper(rune(word[0])))
    }
    
  • function detectCapitalUse(word: string): boolean {
        const cnt = word.split('').reduce((acc, c) => acc + (c === c.toUpperCase() ? 1 : 0), 0);
        return cnt === 0 || cnt === word.length || (cnt === 1 && word[0] === word[0].toUpperCase());
    }
    
    

All Problems

All Solutions