PS Featured [PS] BOJ 24508 / 나도리팡 문제 링크: https://www.acmicpc.net/problem/24508 풀이 한 바구니에서 다른 바구니로 나도리 1마리를 올기는 행동을 최대 $T$회 반복했을 때 모든 나도리를 터뜨릴 수 있는지 파악해야 합니다. 나도리는 한 바구니에 $K$마리가 모이면 터지며 사라집니다. 한 바구니에 나도리를 $K$마리 채우려 할 때, 수가 적은 바구니에서 많은 바구니
PS [PS] BOJ 1644 / 소수의 연속합 문제 링크: https://www.acmicpc.net/problem/1644 Thumbnail: Photo by Ryunosuke Kikuno (Unsplash) 풀이 에라토스테네스의 체를 사용해 $N$까지의 소수를 미리 구하고, 소수들의 배열을 가지고 투 포인터 탐색을 활용해 연속 합을 구하면 됩니다. 에라토스테네스의 체 에라토스테네스의 체는 잘 알려진 소수 판별법으로, 1부터 $N$까지의 범위 안에서 소수를 일괄적으로 구할
PS [PS] BOJ 1806 / 부분합 문제 링크: https://www.acmicpc.net/problem/1806 Thumbnail: Photo by Thibault Penin (Unsplash) 전체 수열의 부분 수열 중, 전체 원소의 합이 $S$보다 크거나 같으면서 길이가 최소가 되는 수열을 찾아, 그 길이를 구하는 문제입니다. 풀이 0.5초라는 짧은 시간 제한 때문에, 모든 부분 수열을 탐색할 수 없습니다. 따라서, 투
PS [PS] BOJ 2473 / 세 용액 문제 링크: https://www.acmicpc.net/problem/2473 Thumbnail: Photo by Whitney Wright (Unsplash) 투 포인터에 이분 탐색을 응용하는 문제입니다. 풀이 기본적인 접근은 용액 (BOJ 2467)과 유사합니다. 2467번 문제에서는 투 포인터로 두 용액을 골랐다면, 이번에는 세 용액을 골라야 합니다. 다만, 문제에서 주어지는 용액의 개수 \(N\)의 범위는 \(3 <
PS [PS] BOJ 2467 / 용액 문제 링크: https://www.acmicpc.net/problem/2467 Thumbnail: Photo by Nikita Tikhomirov (Unsplash) 투 포인터인데 누적합입니다. 풀이 투 포인터 입력 배열에 두 개의 포인터를 두고, 두 위치의 용액 농도의 합의 절댓값이 작아지는 방향으로 포인터를 옮겨가며 최솟값을 찾는 방식으로 풀었습니다. 입력 배열이 이미 정렬된 상태이므로, 포인터를 이동시키는 조건은 다음과 같습니다.
PS [PS] BOJ 2118 / 두 개의 탑 문제 링크: https://www.acmicpc.net/problem/2118 Thumbnail: Photo by Quentin BASNIER (Unsplash) 투 포인터인데 누적합입니다. 풀이 최초 구상 \(N\)개의 지점이 원형으로 이어진 상태에서, 임의의 두 지점을 골라 탑을 배치할 때 두 탑의 최대 거리를 구하는 문제입니다. 이때, 두 지점 사이의 거리는 시계 방향/반시계 방향 거리 중
PS [PS] BOJ 26091 / 현대모비스 소프트웨어 아카데미 문제 링크: https://www.acmicpc.net/problem/26091 Thumbnail: Photo by Stephen Kidd (Unsplash) 문제 이름에 걸맞는 현대차로 썸네일 들고 왔습니다 😄 풀이 구상 가장 많은 팀을 소프트웨어 아카데미에 참여시키기 위해서는 결국 점수가 가장 높은 사람과 가장 낮은 사람을 같은 팀에 붙이는 식으로, 팀의 능력치가 중간 값에 맞춰지도록 하는 방식을 구상했다.
PS [PS] BOJ 30804 / 과일 탕후루 문제 링크: https://www.acmicpc.net/problem/30804 Thumbnail: Photo by Yevhen Buzuk (Unsplash) 풀이 과일의 종류별 개수 세기 정답을 구하기 위해서는, 현재 탕후루에 포함된 과일의 개수를 세는 방법이 필요합니다. 이는 Map 형태의 자료구조를 활용하면 됩니다. 투 포인터 투 포인터란, 이름처럼 두개의 포인터(배열의 인덱스)를 가지고 부분 배열을 동적으로