반응형
문제 링크 : https://www.acmicpc.net/problem/2920
문제 요약
입력받은 값이 1부터 8까지 차례대로면 ascending, 8부터 1까지 차례대로면 descending, 둘 다 아니라면 mixed를 출력하는 프로그램을 만드는 문제이다.
TRY CODE
a = list(map(int,input().split()))
b = [1,2,3,4,5,6,7,8]
if a == b :
print("ascending")
elif a == reversed(b):
print("descending")
else:
print("mixed")
문제점
- 숫자를 거꾸로 입력하면 descending가 출력되는 것이 아니라 mixed가 출력되었다
해결법
- reversed(b)를 출력해 보았더니 <list_reverseiterator object at 0x000001ED0C106340>라는 주소 값이 나와서 list(reversed(b))로 바꿔주었다.
CODE
a = list(map(int,input().split()))
b = [1,2,3,4,5,6,7,8]
if a == b :
print("ascending")
elif a == list(reversed(b)):
print("descending")
else:
print("mixed")
풀이
1. a에 int형 list로 입력 받았다. / b에 리스트형으로 1,2,3,4,5,6,7,8을 넣어주었다.
a = list(map(int,input().split()))
b = [1,2,3,4,5,6,7,8]
2. a와 b가 같으면 ascedding를 출력
a와 reversed(b)가 같으면 descending 출력
그 외에는 mixed 출력
if a == b :
print("ascending")
elif a == list(reversed(b)):
print("descending")
else:
print("mixed")
반응형
'Python > 알고리즘 - 백준' 카테고리의 다른 글
[백준] 3052 : 나머지 (파이썬) (0) | 2022.10.10 |
---|---|
[백준] 2908 : 상수 (파이썬) (0) | 2022.10.08 |
[백준] 2753 : 윤년 (파이썬) (0) | 2022.10.07 |
[백준] 2884 : 알람시계 (파이썬) (0) | 2022.10.07 |
[백준] 2675 : 문자열 반복 (파이썬) (0) | 2022.10.06 |