알고리즘
백준 11536 줄 세우기
킨글
2024. 8. 6. 22:37
설명
1. 정렬한 배열과 그렇지 않은 배열을 비교하기 위해 입력 받을 때에 arr1, arr2 배열에 함께 저장했다.
2. 정렬 후 배열이 같은 경우를 비교하기 위해 Arrays.equals를 사용했다.
3. for문을 통해 첫번째 index와 마지막 index가 같은지 비교했다. 같으면 "DECREASING" 한개라도 다르면 "NEITHER"을 출력하게 했다.
코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
public class Main {
// 11536
public static void main(String[] args) throws IOException {
process();
}
private static void process() throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
String[] arr1 = new String[n];
String[] arr2 = new String[n];
for (int i = 0; i < n; i++) {
String input = br.readLine();
arr1[i] = input;
arr2[i] = input;
}
Arrays.sort(arr2);
if(Arrays.equals(arr1, arr2)) {
bw.write("INCREASING");
} else {
boolean isAscending = true;
for (int i = 0; i < arr1.length; i++) {
if(arr1[i] != arr2[arr1.length-i-1]) {
isAscending = false;
break;
}
}
if(isAscending) {
bw.write("DECREASING");
} else {
bw.write("NEITHER");
}
}
bw.flush();
bw.close();
br.close();
}
}