기록과 정리의 공간

[알고리즘] 백준 2920번 : 음계 본문

문제풀이/백준(BOJ)

[알고리즘] 백준 2920번 : 음계

딸기맛도나쓰 2020. 7. 17. 16:20

백준 2920번 : 음계 (문제 링크)

  • 사용 언어 : 파이썬(Python)
  • 문제 유형 : 배열, 구현
  • 난이도 : 하

소스코드

import sys

code = list(map(int, sys.stdin.readline().split()))

# a, d
results = [True, True]

for i in range(1, len(code)):
    if code[i] - 1 != code[i-1]:
        results[0] = False
    if code[i] + 1 != code[i-1]:
        results[1] = False

if results[0]:
    print('ascending')
elif results[1]:
    print('descending')
else:
    print('mixed')

설명

results리스트의 0번째 원소는 ascending, 1번째 원소는 dscending을 의미한다.
입력 받은 숫자 리스트를 for문을 통해 검사하면서 리스트의 원소들이 전부 내림차순으로 정렬되어있다면 results[0]의 값은 계속 True일 것이다.(오름차순인 경우도 마찬가지) 아래쪽의 if문을 통해, results리스트True값이 있다면 ascending혹은 descending을 출력하고, 둘다 True가 아닌 경우 내림차순도 오름차순도 아닌 경우이므로, mixed를 출력한다.

Comments