[python] 백준 2920 - 음계

3134 단어 코딩테스트bojboj

📍 백준 2920 - 음계

백준 2920 - 음계

⚡️ 나의 풀이

처음에 c d e f g a b C를 각각 1, 2, 3 ... 8의 숫자로 변경한다고 써있길래 ord()함수를 사용하여

  1. c ~ g까지는 ord(i) - 98
  2. a ~ b까지는 ord(i) - 91
  3. C는 ord(i) - 59

조건을 세워 1~8까지 나오게 만들어야하나?라고 생각했는데,
예제 입력을 보니까 알파벳이 아닌 숫자가 들어갔다.

곰곰이 생각하다가 그럼, result = [1, 2, 3, 4, 5, 6, 7, 8]을 선언하고

  1. result와 같을 때
  2. result[::-1]와 같을 때
  3. else일 때

처럼 풀면안되나? 하고 코드를 제출했는데 정답판정을 받았다. 😃 😃
더욱 간단하게 푸는 방법을 찾아 좋았다.

n = list(map(int, input().split()))
result = [1, 2, 3, 4, 5, 6, 7, 8]

if n == result:
    print('ascending')
elif n == result[::-1]:
    print('descending')
else:
    print('mixed')

좋은 웹페이지 즐겨찾기