728x90
반응형
문제
https://www.acmicpc.net/problem/2920
8개의 정수를 입력받아 리스트에 저장.
맨 앞 숫자가 1이면 ascending을 8이면 desending을 모두 아니면 mixed를 저장.
arr = list(map(int, input().split()))
answer = 'ascending' if arr[0] == 1 else 'descending' if arr[0] == 8 else 'mixed'
mixed가 아닌 경우.
- 맨 앞 숫자가 1이면 True, 아니면 False를 저장.
=> 증가 추세이면 True, 감소 추세이면 False.
- 반복문을 이용하여 1번째부터 7번째까지의 요소 가져오기.
-- 만일 True이면서 현재 요소와 이전 요소+1이 같지 않거나 False이면서 현재 요소와 이전요소-1이 같지 않으면 mixed로 변경 후 반복 종료.
결과 출력.
if answer != 'mixed':
is_inc = True if arr[0] == 1 else False
for i in range(1, 8):
if (is_inc and arr[i-1]+1 != arr[i]) or (not is_inc and arr[i-1]-1 != arr[i]):
answer = 'mixed'
break
print(answer)
전체 코드.
arr = list(map(int, input().split()))
answer = 'ascending' if arr[0] == 1 else 'descending' if arr[0] == 8 else 'mixed'
if answer != 'mixed':
is_inc = True if arr[0] == 1 else False
for i in range(1, 8):
if (is_inc and arr[i-1]+1 != arr[i]) or (not is_inc and arr[i-1]-1 != arr[i]):
answer = 'mixed'
break
print(answer)
728x90
반응형
'코딩 > 공부' 카테고리의 다른 글
[Python] 백준 2475번 - 검증수 (0) | 2024.03.27 |
---|---|
[Python] 백준 2577번 - 숫자의 개수 (1) | 2024.03.27 |
[Python] 백준 10250번 - ACM 호텔 (1) | 2024.03.27 |
[Python] 백준 1932번 - 정수 삼각형 (0) | 2024.03.27 |
[Python] 백준 11053번 - 가장 긴 증가하는 부분 수열 (0) | 2024.03.27 |