코딩테스트 6

[ Python ] 프로그래머스 택배상자

코테 문제 풀이 프로그래머스 택배상자 간단한 문제 설명 메인 컨테이너 벨트를 타고 상자들이 순서대로 전달됩니다. 이 상자들을 서브 컨테이너 벨트를 사용하여 트럭에 전달하는 문제입니다. 메인 컨테이너 벨트를 타고 전달되는 상자들이 있습니다. 상자들은 순서대로 1, 2, 3, 4, 5 이런식으로 전달됩니다 트럭에서 상자를 쌓고 싶은 순서는 다릅니다. 서브 컨테이너 벨트에 stack방식으로 상자를 보관할 수 있으며 상자들은 마지막에 넣은 것을 가져와 트럭에 실을 수 있습니다. 간단한 예시 트럭에 실어야 하는 순서가 EX) 2, 4, 5, 3, 1 이라고 한다면 서브 컨테이너에 1, 2 박스를 실습니다. 트럭으로 2번 박스를 전달합니다. sub_container = [ 1 ] truck = [ 2 ] 서브 컨테..

코딩테스트 2023.06.29

[Python] 프로그래머스 프렌즈 4블록

오늘의 문제 중학교 때 애니팡을 많이 했었는데 이 문제를 보니까 살짝 추억이 생각나네요 ㅎㅎ 과거에 했던 게임이라 그런지 문제를 이해하는데 크게 어려움은 없었던 문제였습니다. 문제 정의 2 x 2 블록 안에 같은 문자열이 존재할 때 블록을 삭제하여 삭제된 모든 블록의 개수를 반환하는 문제였습니다. 문제 해결하기 위한 아이디어 4칸을 조회할 수 있는 배열 만들기 x, y 좌표 완전 탐색 4칸 모두 일치하면 좌표 저장 중복되는 좌표 제거 board의 좌표 제거 제거할 좌표가 존재하지 않을 때까지 위의 과정 반복 주의 사항 우선 전부 탐색해서 삭제해야 할 좌표를 찾아서 한 번에 삭제해줘야 합니다. 중복되는 좌표 중복 제거하기 코드 작성 sq = [[0,0],[0,1],[1,0],[1,1]] # 이동 배열 만들..

코딩테스트 2023.05.15

[Python] 프로그래머스 길 찾기 게임 Tree 자료형으로 풀기

길찾기 게임 문제 설명 x, y 좌표로 이루어진 이진트리의 맵에서 전위 순회, 후위 순회 방식으로 순회한 노드의 번호들을 반환하는 문제입니다. 문제 해결방법 저는 이 문제를 해결하기 위해서 트리 자료구조를 만들어서 문제를 해결해보고자 했습니다. 트리 자료구조 만들기 class Node: def __init__(self, x, y, value=None, left=None, right=None, parent=None): self.x = x self.y = y self.value = value self.left = left self.right = right self.parent = parent우선 필드를 보면 x와 y좌표 자식 노드를 저장할 left, right와 부모노드를 가르키는 parent 필드로 구성하..

코딩테스트 2023.05.13

[Python] 프로그래머스 양궁대회

양궁대회 문제 분석하기 해당 문제는 라이언과 어피치가 n개의 화살을 쏴서 라이언이 가장 큰 점수차로 이긴 배열을 반환하는 문제입니다. 첫번째 조건 단 조건이 있는데요 라이온은 챔피언이라 어피치에게 핸디캡을 주고 시작합니다. 0 ~ 10점까지가 있는데 땅따먹기처럼 하나의 점수는 한 사람만 점수를 획득할 수 있습니다. 예를들어 10점을 어피치와, 라이온이 1발씩 맞춘다면 어피치가 10점을 가져가게 되는 것입니다. 그렇기에 점수를 획득하려면 무조건 어피치 + 1의 점수를 맞춰야 하는 것입니다. 두번째 조건 가장 큰 점수차가 2개 이상이라면 점수가 낮은 배열순으로 많이 맞춘 배열을 선택합니다. 의사코드 작성하기 lion이 쏠 수 있는 모든 경우의 수 만들기 -> product 중복 o 순서 o 라이언이 n개 이..

코딩테스트 2023.05.10