python | 송아지 찾기
·
Algorithm
#문제 설명 프로그래머스, 송아지 찾기 #나의 풀이 이 문제가 BFS로 분류되어 있어서 웬 BFS지 싶었는데, 몇 번만에 목표에 도달하는지 그 최소 횟수가 필요한 문제라 그런 것 같았다(BFS는 최단거리, 도달하기 위한 최소 횟수 구하는 문제 해결 방법으로 주로 쓰인다). 현수가 콩콩이로 점프하여 도달할 수 있는 위치를 상태 트리로 그리면 위와 같이 표현할 수 있다. 그리고 몇 번의 점프만에 어느 곳에 도달했는지를 아래 배열 그림과 같이 표현할 수 있다. 큐에 현재 위치에서 점프하여 현수가 도달 가능한 위치를 저장해놓고, 하나씩 pop하면서 송아지 위치와 일치하는지 확인하는 방식으로 문제를 해결할 수 있다. def solution(s, e): visited = [-1] * 10001 q = [s] cnt..
js | 완주하지 못한 선수
·
Algorithm
#문제 설명 프로그래머스, 완주하지 못한 선수 문제: https://programmers.co.kr/learn/courses/30/lessons/42576 #나의 풀이 function solution(participant, completion) { let map = new Map(); participant.forEach((p) => { map.get(p) ? map.set(p, map.get(p) + 1) : map.set(p, 1); }); completion.forEach((c) => { map.set(c, map.get(c) - 1); if (map.get(c) === 0) map.delete(c); }); return Array.from(map.keys()).toString(); } 문제 자체는 ..