전체 글

백준(boj)

[JAVA]2230 수 고르기, 투 포인터(골드5)

📚 문제 https://www.acmicpc.net/problem/2230 2230번: 수 고르기 N개의 정수로 이루어진 수열 A[1], A[2], …, A[N]이 있다. 이 수열에서 두 수를 골랐을 때(같은 수일 수도 있다), 그 차이가 M 이상이면서 제일 작은 경우를 구하는 프로그램을 작성하시오. 예를 들어 www.acmicpc.net 🔍 아이디어 투 포인터를 활용하여 해결하였습니다. 정렬 이후에 만약 최단 값 범위 보다 작다면 right를 오른쪽으로 옮겨서 두 수의 차이를 벌리고 만약 최단 값 범위보다 크다면 기존의 diffMin값과 비교하여 더 작은값을 가지도록 생긴하고 두 수의 차이를 줄이기 위해 left를 한칸 오른쪽으로 옮겼습니다. 해당 방법 풀이를 시간을 비교해보니 속도가 다른 분들보다 조..

백준(boj)

[JAVA]11780 플로이드, 플로이드 워셜

📚 문제 https://www.acmicpc.net/problem/11780 11780번: 플로이드 2 첫째 줄에 도시의 개수 n이 주어지고 둘째 줄에는 버스의 개수 m이 주어진다. 그리고 셋째 줄부터 m+2줄까지 다음과 같은 버스의 정보가 주어진다. 먼저 처음에는 그 버스의 출발 도시의 번호가 www.acmicpc.net 🔍 아이디어 플로이드 알고리즘과, 플로이드 알고리즘의 최단 경로 시에 방문했던 도시들을 찾으면 되는 문제였습니다. p ➡️ q로 가는경우 i를 거쳐서 ( p ➡️ i , i ➡️ q) 가는 경우로 최단 경로를 계산 합니다. 이때 만약 최단 경우로 갱신되는 경우 방문했던 도시의 리스트를 갱신하는 방식으로 풀어 해결하였습니다. 99%에서 틀렸습니다가 나왔었는데, 이 문제는 만약 dMap[..

백준(boj)

[JAVA]백준 13335 트럭 Deque, queue

📚 문제 https://www.acmicpc.net/problem/13335 13335번: 트럭 입력 데이터는 표준입력을 사용한다. 입력은 두 줄로 이루어진다. 입력의 첫 번째 줄에는 세 개의 정수 n (1 ≤ n ≤ 1,000) , w (1 ≤ w ≤ 100) and L (10 ≤ L ≤ 1,000)이 주어지는데, n은 다리를 건너는 트 www.acmicpc.net 🔍 아이디어 처음에 보고는 우선수위 큐를 이용해서 푸는 문제풀이가 생각났다. 근데 어차피 먼저 들어가는 게 먼저 나오니까 그냥 큐로 풀이했다 트럭이 다리에 입장한다면 해당 트럭의 무게와 다음 차례 트럭 무게의 합에 따라 다음 트럭이 입장할 수 있는지가 정해진다. 그리고 한 타임에는 하나의 트럭만 다리에 입장할 수 있다. 트럭은 큐에서 빼는 ..

cons-ps
cons