728x90
문제
https://www.acmicpc.net/problem/31067
풀이
주어진 배열 A의 모든 요소가 서로 다른 오름차순 배열로 만들기 위한 최소 횟수를 구하는 문제다.
오름차순을 만들기 위해 요소에 K만큼 더할 수 있다.
// Solve
int cnt = 0;
for (int i = 0; i < N - 1; ++i) {
if (A[i] < A[i + 1]) {
continue;
}
if (A[i] < A[i + 1] + K) {
A[i + 1] += K;
++cnt
만약 조건에 부합하는 배열을 만들 수 없다면 결과를 -1로 변경하고 탐색을 중단하자.
} else {
cnt = -1;
break;
}
}
소스코드
https://github.com/rogi-rogi/problem-solving/blob/main/baekjoon-online-judge/practice/31067.java
728x90
'PS > Baekjoon Online Judge' 카테고리의 다른 글
[백준 28279] 덱2 [Java] (0) | 2025.03.23 |
---|---|
[백준 32344] 유물 발굴 [Java] (0) | 2025.03.22 |
[백준 02139] 나는 너가 살아온 날을 알고 있다 [Java] (0) | 2025.03.21 |
[백준 05568] 카드 놓기 [Java] (0) | 2025.03.17 |
[백준 26265] 멘토와 멘티 [Java] (0) | 2025.03.16 |