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
'LeetCode' 카테고리의 다른 글
[LeetCode] Medium - 1834 Single-Threaded CPU (0) | 2023.01.04 |
---|---|
[LeetCode] Medium - 55 Jump Game (0) | 2023.01.04 |
[LeetCode] Easy - 290 Word Pattern (0) | 2023.01.02 |
[LeetCode] Hard - 980 Unique Paths III (1) | 2022.12.31 |
[LeetCode] Medium - 309 Best Time to Buy and Sell Stock with Cooldown (1) | 2022.12.23 |