Algorithm 124

[프로그래머스] 게임 맵 최단거리 - Java

문제 설명 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근 방법 해당 문제는 2차원 그래프 상에 특정 출발 지점에서 특정 도착 지점까지 가는 최단 경로를 구하는 문제로서 BFS(너비 우선 탐색)를 이용하여 해결할 수 있었습니다. 도착 지점은 (0, 0)으로, 출발 지점은 (n, m)으로 정해져있으므로, 처음 노드의 좌표를 (0, 0)으로 초기화 해준 후 이를 기점으로 동, 서, 남, 북 방향으로 너비 우선 탐색하도록 했습니다. 이때 탐색의 제외 대상으로는 맵을 이탈하는 경우, 기존에 방문했었던 좌표, 벽인 경우가 있습니다. 탐색 시 도착 지점 (n, ..

[프로그래머스] 큰 수 만들기 - Java

문제 설명 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근 방법 해당 문제에서는 특정 수가 문자열로 주어졌을 때 k개의 수를 제거했을 때 얻을 수 있는 가장 큰 숫자를 요구하고 있습니다. 제가 접근했었던 방법은 주어진 문자열을 순회하면서 앞선 숫자가 뒤에 나오는 숫자보다 작을 경우 해당 숫자를 지워나가는 방식으로 접근하는 것이었습니다. 이때 뒤에 나오는 숫자보다 앞선 숫자가 더 크다면 제거할 수 있는 수(k)의 여분이 있는 경우에 대해서만 추가적으로 뒤에 나오는 숫자들을 탐색하도록 했고 이때 나오는 숫자 보다 작다면, 앞선 숫자를 제거하였습니다. 다만..

[백준 - 25330] SHOW ME THE DUNGEON - Java

문제 설명 25330번: SHOW ME THE DUNGEON 올 여름 출시된 RPG 게임 "SHOW ME THE DUNGEON"은 주인공 시루가 몬스터에게 침략당한 마을을 구하는 내용의 게임이다. 배경이 되는 나라는 $0, 1, 2, \cdots, N$번의 번호가 붙어있는 $N+1$개의 마을로 이루 www.acmicpc.net 접근 방법 해당 문제에서는 캐릭터(시루)의 체력과 마을별 몬스터의 공격력과 주민의 수가 주어졌을 때 시루가 해방시킬 수 있는 주민들의 최대 수를 요구하고 있습니다. 접근 방법 1 : 순열 - 시간 초과 처음 이 문제에 접근했었던 방식은 시루가 각각의 던전들을 순서를 고려하면서 방문하는 모든 경우의 수(순열)를 구함으로써 해방시킬 수 있는 주민들의 최대 수를 구하는 것이었습니다. (..

Algorithm/BOJ 2022.07.10

[프로그래머스] 조이스틱 - Java

문제 설명 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 접근 방법 해당 문제에서는 완성해야 하는 알파벳 이름이 주어졌을 때 이를 만들기 위한 최소한의 조이스틱 조작 횟수를 요구하고 있습니다. 우선 조이스틱의 조작은 크게 알파벳 이름을 조작하는 것과 커서 이동을 조작하는 것 이 두 가지로 나뉜다고 볼 수 있습니다. 알파벳 이름 조작하기 알파벳 이름을 조작하기 위해 먼저 만들어야 할 이름의 문자와 최초 문자(A) 간 아스키 코드 값 차이를 구하도록 했습니다. 이때 이 값(gap)이 13 미만이라면 이 값만큼 조작하는 것이 최소 조작 횟수일 것이고, 13 이..

[코드업 - 4791] 사냥꾼 - Java

문제 설명 사냥꾼 첫 줄에는 사대의 수 $M$ $(1 ≤ M ≤ 100,000)$, 동물 의 수 $N$ $( 1 ≤ N ≤ 100,000)$, 사정거리 $L$ $(1 ≤ L ≤ 1,000,000,000)$이 빈칸을 사이에 두 고 주어진다. 두 번째 줄에는 사대의 위치를 나타 내는 $M$ 개 www.codeup.kr 접근 방법 해당 문제에서는 사대(총을 쏘는 장소)들의 위치와 동물들의 위치가 주어졌을 때 특정 사정거리 내에서 잡을 수 있는 동물의 수를 요구하고 있다. 그래프 탐색을 이용해볼까? 처음 내가 생각했었던 방법은 동물들의 위치를 그래프에 나타낸 후 사대별로 그래프 탐색을 통해 사정 거리 내에 있는 동물들을 소거해가는 방식을 생각했었다. 하지만 문제에서 주어지는 사정거리의 최대치는 10억이라는 값으..

Algorithm/CodeUp 2022.07.09