본문 바로가기

dev/코테

숫자 변환하기

프로그래머스에서 숫자 변환하기 문제를 풀었습니다.

 

https://school.programmers.co.kr/learn/courses/30/lessons/154538

 

프로그래머스

코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.

programmers.co.kr

 

문제에 대한 설명은 위의 링크에서 확인하시면 됩니다.

 

소스 코드

 

최소 연산 횟수를 구하기 위해 BFS로 풀었습니다.

 

숫자와 연산 횟수를 저장하는 배열을 큐에 저장합니다.(32 ~ 33라인)

 

0번째 인덱스는 현재까지 연산한 숫자이고, 1번째 인덱스 현재까지 연산한 횟수입니다.

 

연산한 숫자 여부를 저장하는 set을 생성합니다.(35 ~ 36라인)

 

set은 BFS나 DFS에서 노드 방문여부를 관리하는 것과 비슷한 역할을 합니다.

 

문제에서 주어진 조건으로 연산을 수행합니다.(38 ~ 63라인)

 

연산한 숫자가 목표인 숫자로 변환된 경우 answer에 연산 횟수를 저장합니다.(41 ~ 44라인)

 

BFS를 이용하면 쉽게 풀 수 있는 문제입니다.

 

채점 결과

'dev > 코테' 카테고리의 다른 글

석유 시추  (0) 2024.03.31
110 옮기기  (0) 2024.03.30
카카오프렌즈 컬러링북  (0) 2024.01.12
여행경로  (0) 2024.01.03
가장 먼 노드  (0) 2023.11.08