본문 바로가기
Algorithm/Baekjoon

Baekjoon 2920 음계 JAVA

by Hunveloper 2022. 1. 11.
728x90
 

2920번: 음계

다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다. 1부터 8까지 차례대로 연주한다면 ascending, 8

www.acmicpc.net

문제

다장조는 c d e f g a b C, 총 8개 음으로 이루어져있다. 이 문제에서 8개 음은 다음과 같이 숫자로 바꾸어 표현한다. c는 1로, d는 2로, ..., C를 8로 바꾼다.

1부터 8까지 차례대로 연주한다면 ascending, 8부터 1까지 차례대로 연주한다면 descending, 둘 다 아니라면 mixed 이다.

연주한 순서가 주어졌을 때, 이것이 ascending인지, descending인지, 아니면 mixed인지 판별하는 프로그램을 작성하시오.

입력

첫째 줄에 8개 숫자가 주어진다. 이 숫자는 문제 설명에서 설명한 음이며, 1부터 8까지 숫자가 한 번씩 등장한다.

출력

첫째 줄에 ascending, descending, mixed 중 하나를 출력한다.

코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.StringTokenizer;

public class Main {

	public static void main(String[] args) throws Exception {
		// TODO Auto-generated method stub
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		StringTokenizer st = new StringTokenizer(br.readLine());
		int prev=Integer.parseInt(st.nextToken()), now=0;
		for(int i=0;i<7;i++ ) {
			now=Integer.parseInt(st.nextToken());
			if(Math.abs(prev - now)!=1) {
				System.out.println("mixed");
				return;
			}
			prev=now;
		}
		if(now==8) {
			System.out.println("ascending");
		}
		else
			System.out.println("descending");
	}

}
728x90
728x90

'Algorithm > Baekjoon' 카테고리의 다른 글

Baekjoon 8958 OX퀴즈 JAVA  (0) 2022.01.12
Baekjoon 3052 나머지 JAVA  (0) 2022.01.12
Baekjoon 2908 상수 JAVA  (0) 2022.01.11
Baekjoon 2675 문자열 반복 JAVA  (0) 2022.01.11
Baekjoon 2577 숫자의 개수JAVA  (0) 2022.01.11

댓글