골드 2

[백준][JAVA] 2631 - 줄세우기 - DP, 이진탐색

📌 문제백준 | 줄세우기 | GOLD 4 | DP, 이진탐https://www.acmicpc.net/problem/2631 📌 문제 탐색하기일반적인 정렬 알고리즘은 최대 O(NlogN) ~ O(N^2) 까지 될 수 있어서… 비추하는 방법일 것 같은데문제에서 N이 고작 200이하의 정수라고 주어졌고시간제한이 1초라면, 최대 40000 즉, 1초도 안넘을 것임 ⇒ 그러므로 일반 정렬 사용해도 괜찮다.근데 문제는,,, ‘정렬’을 하는 것이 아니라, ‘최소 몇 번으로 이동 가능’이므로 ‘DP’로 풀어야할 것.3 7 5 2 6 1 4 - 3 5 63 7 4 5 2 6 1 (4번 이동) - 34563 4 5 2 6 1 7 (7번 이동) - 345671 3 4 5 2 6 7 (1번 이동) - 1 3 4 5 6 7..

알고리즘/백준 2024.11.28

[백준][JAVA] 13164 - 행복 유치원 - 그리디

📌 문제백준 | 행복 유치원 | level5 | 그리디https://www.acmicpc.net/problem/13164  📌 문제 탐색하기N명의 원생들을 키 순서대로 줄을 세우기총 K개의 조로 나누려고 함각 조에는 원생이 적어도 1명 있어야함같은 조에 속한 원생들은 서로 인접해 있어야함조별로 인원수가 같을 필요는 없음조마다 티셔츠를 맞추는 비용 = 가장 키가 큰 원생 - 키가 작은 원생출력 : 최대한 비용을 절약하기 위한 최소 비용 📌 알고리즘원생의 수 N은 최대 300,000까지 가능K는 N이하문제에서 이미 키 순서대로 작성됏으므로 Arrays.sort = O(NlogN)은 필요 x출력값을 최소로 만들기 위해선, 처음부터 각 조의 가장 키가 큰 원생과 작은 원생의 차이가 작도록 구성해야함 ⇒ 그..

알고리즘/백준 2024.11.21