LeetCode

[LeetCode] Easy - 520 Detect Capital

NIMHO 2023. 1. 2. 17:27
728x90

▶520 - Detect Capital

문제

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.

 

예제

Input: word = "USA"
Output: true
Input: word = "FlaG"
Output: false
728x90

풀이

capital은 전부 대문자이거나, 전부 소문자, 첫 문자만 대문자 이렇게 세 가지의 경우만 가능하다.

모두 python 함수로 가능하다.

 

capitalize()를 사용하면 첫 문자만 대문자로 바꿔주고, lower()과 upper()는 전부 소문자, 대문자로 바꿔준다.

원래 단어에 이를 적용해서 비교해주고 같으면 True를 리턴해주면 된다.

class Solution:
    def detectCapitalUse(self, word: str) -> bool:
        if word == word.capitalize():
            return True
        elif word == word.lower():
            return True
        elif word == word.upper():
            return True
        
        return False

정답을 한 줄로 표현할 수도 있지만,

개인적으로 그렇게 코드를 작성하는 것을 별로 좋아하지 않는다.

내가 보기에도 헷갈리기에 저렇게 나열해서 푸는 것을 좋아한다.

728x90