본문 바로가기

~2023

프로그래머스 '자연수 뒤집어 배열로 만들기' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry입니다~ 오늘은 프로그래머스 문제 중에 비교적 간단한 Level 1문제를 풀어보았습니다. 문자열을 다루는 방법과, list comprehension을 사용하면 문제를 깔끔하게 해결할 수 있으실 것 같은 문제입니다. 아래는 저의 코드입니다. def solution(n): answer = list(str(n)[::-1]) return [int(x) for x in answer] 아래는 문제 풀이 영상입니다. https://youtu.be/yww5zVu6Go4 - YouTube www.youtube.com 더보기
프로그래머스 '약수의 합' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry입니다~ 오늘도 코딩테스트 문제를 한 문제 풀어보았습니다. 프로그래머스의 Level 1 문제인데요, 약수의 합을 구하는 문제입니다. 문제를 풀면서 가장 중요했던 부분은, 약수인지 여부를 탐색하는 기준으로 해당 index 값의 제곱값이 대상 정수를 넘지 않는 범위에서만 확인을 해주어야 한다는 것입니다. 아래는 제가 문제를 푼 코드입니다. def solution(n): answer = 0 current_number = 1 while current_number*current_number < n: if n%current_number == 0: answer += current_number answer += n/current_number current_number += 1 if current_n.. 더보기
프로그래머스 '튜플' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry입니다~ 오늘은 2019 카카오 개발자 겨울 인턴십에 출제되었던 튜플이라는 문제를 풀어보았습니다. 프로그래머스의 Level 2 난이도의 문제인데요, 문자열을 얼마나 자유자재로 다룰 수 있는지에 대한 능력을 요구하는 문제였습니다. 아래는 저의 코드입니다. from typing import List def solution(s: str) -> List[int]: answer = [] s_list = s[2:-2].split('},{') sorted_list = sorted(s_list, key=lambda x: len(x)) for l in sorted_list: ls = l.split(',') answer.append(list(set(ls)-set(answer))[0]) return [i.. 더보기
프로그래머스 '평균 구하기' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry입니다~ 오늘도 코딩테스트 문제를 한문제 풀어보았습니다. 오늘은 프로그래머스의 Level 1 난이도의 문제인 평균 구하기 문제를 풀어보았습니다. 정답률이 80%가 넘는 만큼 간단하게 푸실 수 있는 문제이니, 가벼운 마음으로 접근하셔도 좋을 것 같습니다. 아래는 저의 코드입니다. from typing import List def solution(arr: List[int]) -> float: return sum(arr)/len(arr) 문제 풀이 영상입니다. https://youtu.be/1vrqVsWgoeA 더보기
프로그래머스 '올바른 괄호' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry 입니다 오늘은 올바른 괄호 라는 문제를 풀어보았습니다. 프로그래머스에서 Level 별로 문제 난이도가 정해져 있는데, 이 문제는 Level 2에 속해있는 문제입니다. 저는 문자를 숫자로 치환한 뒤에 덧셈 연산을 통해 문제를 풀어보았습니다. 아래는 저의 코드입니다. str_dict = {"(": 1, ")": -1} def solution(s): current_value = 0 for i in s: current_value += str_dict[i] if current_value < 0: return False return True if current_value == 0 else False 해당 문제에 대한 강의입니다. https://youtu.be/GJuDfJlrbJI 더보기
프로그래머스 '자릿수 더하기' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry 입니다 오늘은 자릿수 더하기 라는 문제를 풀어보았습니다. 프로그래머스에서 Level 별로 문제 난이도가 정해져 있는데, 이 문제는 Level 1에 속해있는 문제입니다. 숫자 -> 문자로 치환하여 index 접근을 한다면, 자릿수에 조금 더 편하게 접근이 가능하실 것으로 보입니다.ㅎㅎ 아래는 저의 코드입니다. def solution(n): str_n = str(n) current_value = 0 for s in str_n: current_value += int(s) return current_value 문제에 대한 강의 영상입니다. https://youtu.be/PDxkY0QIYlI 더보기
프로그래머스 '이진 변환 반복하기' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry 입니다 오늘은 이진 변환 반복하기 라는 문제를 풀어보았습니다. 프로그래머스에서 Level 별로 문제 난이도가 정해져 있는데, 이 문제는 Level 2에 속해있는 문제입니다. 먼저 이진 변환하는 방법을 알아야 하고, 숫자로 되어있는 문자열에서 0을 제거하는 방법을 알아야 합니다. 저는 문자열을 리스트로 변환해서 문제를 풀었는데, 또 0과 1만 이루어져 있기 때문에, 값을 모두 더하는 것을 1의 개수로 보는 것도 참 좋은 방법일 것 같습니다. 아래는 제가 푼 소스입니다. 코드 보시면서 도움이 되시길 바랍니다ㅎㅎ from typing import List def solution(s: str) -> List[int]: zero_count_list = list() while True: ls .. 더보기
프로그래머스 '짝수와 홀수' 문제풀이(PYTHON) - Henry's Algorithm 안녕하세요 Henry입니다! 오늘은 if라는 문법을 사용한 풀이를 요구하는 문제를 풀어보았습니다. if는 일반적으로 분기를 나눌때 우리가 주로 사용하는 문법이죠? 코드 보시면서 도움이 되시길 바랍니다ㅎㅎ def solution(num): return "Even" if num%2 == 0 else "Odd" 아래는 문제 풀이 영상입니다. https://youtu.be/xLceLn_IDJM - YouTube www.youtube.com 더보기