99클럽 코테 스터디 10일차 TIL + 리트코드 2283번 Check if Number Has Equal Digit Count and Digit Value(Python)

모래·2025년 4월 9일

99클럽 스터디

목록 보기
8/20
post-thumbnail

✔️오늘의 학습 키워드

  • 문자열
  • 해시
  • leetcode 2283번 Check if Number Has Equal Digit Count and Digit Value

✔️ 공부한 내용

📌 오늘의 문제


📌 작성 코드

class Solution:
    def digitCount(self, num: str) -> bool:
        for i in range(len(num)):
            if int(num[i]) != num.count(str(i)):
                return False
        return True

✔️ 오늘의 회고

📌 문제 및 시도 방법

사실 이 문제는 문제 내용부터 이해하는데 좀 시간이 걸렸다.
이 문제는 각 글자의 인덱스의 개수가 그 글자의 수가 모두 같으면 True, 그렇지 않으면 False를 반환하는 문제이다.
예시처럼 1210의 경우 각 글자의 인덱스는 차례대로 0,1,2,3 이고
각각 0이 1개, 1이 2개, 2가 1개, 3이 0개 여야한다는 뜻이다.

📌 문제 해결 방법

  1. num의 글자수 만큼 반복
  2. num의 각 글자와 그 글자의 인덱스의 개수가 같지 않으면 False 반환
  3. 모두 같으면 True 반환

📌 새롭게 안 내용

내가 작성한 코드에서 if int(num[i]) != num.count(str(i))) 부분에서
num[i]는 문자열이고, num.count(str(i))는 int이므로 int(num[i])로 감싸주지 않으면
'1' 과 1을 비교하는 셈이 되어 같지 않다고 판단되는 점을 조심해야했다.

📌 내일 학습할 내용

내일의 알고리즘 문제를 풀어보고 이해하기


#99클럽 #코딩테스트준비 #개발자취업 #항해99 #TIL

profile
꾸준히 성장하는 웹 백엔드 개발자가 되자🔥

0개의 댓글