1. 문제정보 https://school.programmers.co.kr/learn/courses/30/lessons/1844 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 전형적인 DFS/BFS 문제와 비슷하지만 목적지까지 도착하지 못하는 경우, 경로가 분리되는 경우 더 짧은 거리를 출력하는 것을 고려해야 하는 문제였다. 이미 방문한 노드(0 도아니고 1도 아닌)에 대해서 최단 거리를 갱신할 수 있는 경우에만 다음 노드를 추가하였다. 3. 소스코드 from collections import deque def solution(maps): n, ..
1. 문제정보 https://school.programmers.co.kr/learn/courses/30/lessons/43165 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 우선 주어진 문자열 정보를 가지고 DFS를 사용하기 위해 다음과 같은 이상한 그래프(?)로 만들었다. 이상하다고 표현한 이유는 노드간의 연결도 아니고, 좌표간의 연결도 아니기 때문에 이렇게 표현했다. 지금 생각해보니 없어도 되는 로직인데.. 어쨌든 DFS에 0을 전달하며 탐색이 시작할 수 있도록 구현했다. [ [1, -1], # 0번째에서 선택할 수 있는 수 [1, -1]..
1. 문제정보 https://school.programmers.co.kr/learn/courses/30/lessons/42746# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 우선 각 숫자를 문자열 형태로 바꾼 후 첫번째 인덱스의 값을 비교하여 정렬을 진행하려고 했다. 하지만 값이 같은 경우 이후 숫자에 대해서도 비교가 필요했고 자릿수나 0과 같은 예외 상황이 있어서 구현하는데 쉽지 않겠다는 생각이 들었다. 예를 들어 [3, 30, 31]이 있는 경우 값을 구하기 위해서는 [31, 3, 30] 으로 정렬이 필요했다. 결국 문제를 해결하지 못했..
1.문제정보 https://school.programmers.co.kr/learn/courses/30/lessons/42626 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 2. 풀이 정렬된 데이터 큐에서 가장 작은 2개를 선택하여 값을 계산한 후 다시 데이터 큐에 값을 저장하는 것을 반복하면 된다. 문제는 계산을 반복하면서 데이터 목록을 계속 정렬해줘야 하는 부분이였다. 기존에 우선순위 큐(Priority Queue)에 대해서 알고 있어서 우선순위 큐로 문제 풀이를 시도하였다. 결과는 일부 케이스에서 시간초과를 받았다. 답을 만들 수 없는 경우(-1)에..