공부하기/백준

[Java] 백준 풀기 2920 - 음계

XEV 2024. 7. 16. 23:42

자바 백준 2920번

브론즈 2

https://www.acmicpc.net/problem/2920

 

 

 

 

 

문제 보기

분류: 구현

 

 

 

 

 

코드 풀이

import java.util.Scanner;
public class Main {
public static void main(String[] args) {
// 사용자로부터 음계 입력
int[] notes = readInput();
// 음계가 ascending, descending, mixed 중 어디에 해당하는지 판별
String result = getResult(notes);
// 결과 출력
System.out.println(result);
}
private static int[] readInput() {
Scanner scanner = new Scanner(System.in);
// 8개의 음계를 저장할 배열 생성
int[] notes = new int[8];
// 사용자로부터 8개의 음계 입력
for (int i = 0; i < 8; i++) {
notes[i] = scanner.nextInt();
}
// 입력받은 음계 배열 반환
return notes;
}
private static String getResult(int[] notes) {
// 음계가 ascending인지 판별하는 변수
boolean isAscending = true;
// 음계가 descending인지 판별하는 변수
boolean isDescending = true;
// 음계가 ascending인지, descending인지 판별
for (int i = 0; i < 7; i++) {
if (notes[i] + 1 != notes[i + 1]) {
isAscending = false;
}
if (notes[i] - 1 != notes[i + 1]) {
isDescending = false;
}
}
// 음계가 ascending, descending, mixed 중 어디에 해당하는지 결정
if (isAscending) {
return "ascending";
} else if (isDescending) {
return "descending";
} else {
return "mixed";
}
}
}