본문 바로가기

미로 탈출

(2)
[C++] Programmers 시험장 나누기 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/81305 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 과정 첫 번째 시도 해당 문제는 최대 트래픽을 최소화하는 것이 목표이다. 따라서 해당 문제는 최적값을 찾는 최적화 문제이다. 하지만 해당 문제를 결정 문제로 치환할 수 있다. 다시 말해, "최대 트래픽의 최소값을 찾아라" 라는 문제가 아닌 "최대 트래픽으로 n이 될 수 있는가?" 라는 문제로 바꾸기로 했다. 그래서 낮은 트래픽 n부터 시작하여, "최대 트래픽으로 n이 될 수 있..
[C++] Programmers 미로 탈출 문제 설명 https://school.programmers.co.kr/learn/courses/30/lessons/81304 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 내 풀이 과정 첫 번째 시도 문제를 보고 트랩을 밟으면 모든 화살표의 방향이 바뀐다고 생각하였다. 그래서 road_dis[출발점][도착점][트랩의 눌림 여부] 라는 배열을 만들어서 이를 이용한 bfs 탐색 코드를 만들었다. 당연하게도 틀렸다. 문제를 다시 읽고 모든 화살표의 방향이 아니라 "트랩과 연결된" 화살표라는 것을 깨달았다. 첫 시도의 코드는 너무 멍청하다고 느껴서 바로 지웠다...