"꾸준하고 완벽한 한 걸음"

PS/Baekjoon Online Judge

[백준 23351] 물 주기 [Java]

kimyoungrok 2025. 5. 9. 23:59
728x90

문제

23351번: 물 주기

 

23351번: 물 주기

 

boj.ma

 


풀이

첫 캣닢이 죽는 날짜를 최대한 미루도록 물을 주는 문제다.

이를 위해서는 남은 수분이 적은 캣닢에게 물을 주는 것이 최선이다.

따라서 오름차순으로 정렬 후 K개의 캣닢에게 B-1만큼 물을 주고, 물을 주지않은 나머지 캣닢들은 1씩 감소시키면 된다.

        Arrays.sort(arr);
        while (isValid(arr)) {
            for (int i = 0; i < A; ++i) {
                arr[i] += B - 1;
            }
            for (int i = A; i < arr.length; ++i) {
                arr[i] -= 1;
            }

이후에는 다시 수분이 적은 순대로 정렬 후 날짜를 늘려주자.

            Arrays.sort(arr);
            ++day;
        }

풀이 시간

5분


소스코드

https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/easy/23251.java

 

problem-solving/baekjoon-online-judge/easy/23251.java at main · rogi-rogi/problem-solving

Daily Problem Solving Challenges. Contribute to rogi-rogi/problem-solving development by creating an account on GitHub.

github.com

 

728x90