본문 바로가기

메모장/코딩테스트 준비23

코딩테스트 - 파이썬 - 스티커 수집 문제 def solution(sticker): n = len(sticker) if n 2023. 4. 20.
코딩테스트 - 파이썬 - 상자 채우기 def solution(n): if n == 0: return 0 box_5 = n // 5 # 5kg 무게의 상자 개수를 최대한 많이 채우는 경우를 계산하여 box_5에 저장 while box_5 >= 0: # box_5 값이 0 이상인 동안 반복 remaining = n - (5 * box_5) # 남은 무게를 계산하여 remaining에 저장 if remaining % 3 == 0: # 남은 무게가 3의 배수인 경우, 3kg 무게의 상자로 채울 수 있음 box_3 = remaining // 3 # 3kg 무게의 상자 개수를 계산하여 box_3에 저장 return box_5 + box_3 # 5kg과 3kg 무게의 상자 개수를 합하여 반환 box_5 -= 1 # 가능한 경우가 없는 경우, box_5 .. 2023. 4. 19.
코딩테스트 준비 - 팰린드롬 팰린드롬(palindrome)은 앞에서부터 읽어도 뒤에서부터 읽어도 동일한 문자열 또는 숫자열을 말합니다. 예를 들면 "level", "radar", "madam" 등이 팰린드롬의 예시입니다. 팰린드롬은 문자열뿐만 아니라 숫자나 기호 등 다양한 형태로 나타날 수 있습니다. def solution(n, m): count = 0 # 팰린드롬 숫자의 개수를 저장하는 변수 for num in range(n, m + 1): # n부터 m까지의 범위에서 숫자를 하나씩 확인 num_str = str(num) # 숫자를 문자열로 변환하여 각 자리수를 확인하기 위한 변수 is_palindrome = True # 현재 숫자가 팰린드롬인지 여부를 저장하는 변수 # 숫자의 각 자리수를 확인하여 팰린드롬인지 여부를 판단 for.. 2023. 4. 18.
파이썬 코딩테스트 - 괄호짝 맞추기 - 참고용 def check_matching_brackets(s): stack = [] # 스택 초기화 # 닫힌 괄호를 키(key)로, 여는 괄호를 값(value)으로 하는 딕셔너리 brackets = {')': '(', '}': '{', ']': '['} for char in s: if char in brackets.values(): # 여는 괄호일 경우 스택에 push stack.append(char) elif char in brackets.keys(): # 닫는 괄호일 경우 if not stack or brackets[char] != stack.pop(): # 스택이 비어있거나, 짝이 맞지 않는 경우 False 반환 return False else: # 괄호 이외의 문자는 무시 continue # 스택에 남아.. 2023. 4. 8.