Algorithm/백준42 백준 - 우체국 문제 설명 각 마을들이 위치한 수직선 상에서 마을에 거주하는 각 사람들까지의 거리의 합이 최소가 되는 곳에 우체국을 건설하려고 할 때, 우체국을 세울 위치를 구하는 문제이다. 각 사람들까지의 거리의 합이 최소가 되는 곳에 우체국을 건설해야 하니 과반수가 넘는 인원에 대해서 최대한 가깝게 우체국을 건설하는 것이 좋다고 판단하였다. 우선 거리기반(오름차순), 인구수 기반(내림차순)으로 정렬한다. 하나씩 순회하면서 거쳐간 인원 인구수를 파악한 후 과반수 이상의 사람이 살고 있는 경우라면 해당 위치에 우체국을 건설한다. 단 원소의 값이 최소 + - 10억이므로 거쳐간 인구수에서 int 자료형은 이슈가 될 수 있으니 주의해야한다. 풀이 public static void main (String[] args) thr.. Algorithm/백준 2023. 5. 27. 백준 - 꿀 따기 문제 설명 주어진 배열은 각 꿀의 양을 나타낸다. 벌 2마리 벌통 1개가 주어진다. 벌 2마리를 어느 위치에 위치시키고, 벌통을 벌2마리의 위치가 아닌 위치에 두면, 벌들이 벌통을 향해서 이동하게 된다. 단, 가는 길의 꿀을 따면서 간다. 이런 시스템으로 이동할 경우 벌들이 꿀을 딸 수 있는 가능한 최대 양을 구하는 문제이다. 처음 접근할 때 어떤 것을 고정시켜야 될까? 라는 질문에 답하지 못했다. 너무나도 애매했다. 왜냐하면 벌들의 위치와 꿀통의 위치에 따라 달라지는데, n^3 이 나온다고 생각했다. - 벌1,2 위치 선택 (n^2) - > 꿀통 위치 [i, n-1] (n) 그래서 시간초과가 분명하게 난다고 생각했다. 최대가 되는 경우를 생각해 볼때, “꿀벌 1 위치 < 꿀벌 2위치 시간초과 // 누적.. Algorithm/백준 2023. 5. 26. 백준 - 항구 문제 설명 모든 화물을 크레인을 통해 옮기려고 한다. 크레인으로 모든 화물을 옮기는데 걸리는 최소 시간을 구하는 문제이다., 각 크레인은 최대로 화물을 올릴 수 있는 크기가 정해져 있다. 제한 범위 크레인의 총 개수 50 화물의 개수 10,000 가장 큰 화물을 들 수 있는 크레인이 가장 큰 적재화물을 드는 식이 최선이라고 생각했다. 크레인을 내림차순 적재 화물을 내림차순 주의사항 적재화물을 처음에 우선순위 큐로 소비하는 식으로 구현했다. 하지만 반례케이스가 존재했다. 크레인 = [10,8,1] 적재화물 = [10,8,7,1,1] - 단 2번 만에 옮김 수 있는 경우인데 적재화물 머리(7) 일 때, 다음 화물 1에서 크레인 1을 사용하여 옮길 수 있어 10,8,1을 걸리는데 1분이 걸리고 그다음 7,1,.. Algorithm/백준 2023. 5. 23. 백준 - 톱니바퀴 문제 설명 톱니바퀴 4개가 주어진다. 톱니바퀴 하나를 회전화면 주의에 톱니바퀴가 돌아가게 된다. 주의의 톱니바퀴가 돌아가는 조건은 서로 맞물려있는 부분이 서로 다른 성질을 가지면 된다. 주어진 명령에 의해 해당 톱니바퀴를 돌리고 주어진 점수를 할당하여 점수를 구하는 문제이다. 1번 톱니바퀴의 12시방향이 N극이면 0점, S극이면 1점 2번 톱니바퀴의 12시방향이 N극이면 0점, S극이면 2점 3번 톱니바퀴의 12시방향이 N극이면 0점, S극이면 4점 4번 톱니바퀴의 12시방향이 N극이면 0점, S극이면 8점 풀이 맞물려있는 부분은 배열의 2번째 칸 6번째 칸이다. 하지만 맨 끝에 위치한 톱니바퀴는 왼쪽 또는 오른쪽에 아무것도 없다. 해당 문제에서 중요한 것은 전파이다. 전파력이 어디까지 도달할 수 있는지.. Algorithm/백준 2023. 5. 9. 백준 - 철로 문제 설명 n명의 각 사람의 사무실 위치와 집 위치가 주어진다. 임이의 두점 A,B를 잊는 철로를 만들 떄 선분에 포함되는 사람의 수가 가장 많은 값을 출력하는 문제이다. 임의의 선분 L을 A=10, B=40일 때 4명의 사람이 포함되어 최댓값은 4가 된다. 풀이 Algorithm/백준 2023. 5. 4. 이전 1 2 3 4 ··· 9 다음