문제 8980번: 택배 입력의 첫 줄은 마을 수 N과 트럭의 용량 C가 빈칸을 사이에 두고 주어진다. N은 2이상 2,000이하 정수이고, C는 1이상 10,000이하 정수이다. 다음 줄에, 보내는 박스 정보의 개수 M이 주어진다. M은 1이 www.acmicpc.net 문제 풀이 접근법을 생각하기까지 시간이 걸렸으며, 다소 어려웠다. 문제의 해답은 각 마을 별로 출발지 도착지를 기준으로 출발 가능한 양을 지속적으로 확인해야 한다는 것이다. 마을 별로 실을 수 있는 최대 박스의 양을 트럭의 용량으로 초기화한다. 입력된 값을 도착지를 기준으로 정렬한다 입력된 값을 순차적으로 돌며, 출발지 도착지에 적재 가능량과 박스의 양을 비교하여 처리한다. 이를 순차적으로 반복하면 요구하는 답을 찾을 수 있다. 코드 f..
문제 2141번: 우체국 첫째 줄에 N(1≤N≤100,000)이 주어진다. 다음 N개의 줄에는 X[1] A[1], X[2] A[2], …, X[N] A[N]이 주어진다. 범위는 |X[i]|≤1,000,000,000, 0≤A[i]≤1,000,000,000 이며 모든 입력은 정수이다. www.acmicpc.net 문제 풀이 처음 문제를 접하였을 때는 나라에서 각 사람들까지의 거리의 합이 최소가 되는 위치의 의미를 이해하지 못했다. 코드를 작성하는 시간보다 문제에서 의미하는 바를 생각하는 데까지 걸리는 시간이 더 소요된 것 같다. 즉 문제를 풀기 위해서는 중간 값을 계산하고, 각 마을의 번호 순서대로 정렬한다. 정렬된 마을을 기준으로 하나씩 인구수를 계산하여 중간값과 가장 근접한 마을을 찾아 출력하면 된다. ..