프로그래머스

· 알고리즘
🔐 문제 길이가 같은 두 개의 큐가 주어집니다. 하나의 큐를 골라 원소를 추출(pop)하고, 추출된 원소를 다른 큐에 집어넣는(insert) 작업을 통해 각 큐의 원소 합이 같도록 만들려고 합니다. 이때 필요한 작업의 최소 횟수를 구하고자 합니다. 한 번의 pop과 한 번의 insert를 합쳐서 작업을 1회 수행한 것으로 간주합니다. 큐는 먼저 집어넣은 원소가 먼저 나오는 구조입니다. 이 문제에서는 큐를 배열로 표현하며, 원소가 배열 앞쪽에 있을수록 먼저 집어넣은 원소임을 의미합니다. 즉, pop을 하면 배열의 첫 번째 원소가 추출되며, insert를 하면 배열의 끝에 원소가 추가됩니다. 예를 들어 큐 [1, 2, 3, 4]가 주어졌을 때, pop을 하면 맨 앞에 있는 원소 1이 추출되어 [2, 3, 4..
· 알고리즘
🔴 해당 문제는 자연수 x를 - x에 n을 더합니다 - x에 2를 곱합니다. - x에 3을 곱합니다. 이 세가지 연산을 통해 y로 변환하는 최소 연산 횟수를 구하는 문제입니다. 따라서 최소 연산 횟수를 구하기 위한 bFS로 구현을 하였습니다. import java.util.LinkedList; import java.util.Queue; public class ChangeNum { public static void main(String[] args) { ChangeNum test = new ChangeNum(); System.out.println(test.solution(2,5,4)); } //최단경우의 수를 찾는것이기 때문에 bfs를 이용 //x가 y로 되기 위한 방법은 최대 x ~ y까지의 경우가 존재..
TeaHuiLee
'프로그래머스' 태그의 글 목록