SW Expert Academy- 평범한 숫자
문제 링크
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AXhh-H-KwUcDFARQ
문제 입력
2
3
1 3 2
5
1 3 5 4 2
#1 0
#2 2
문제 풀이
import sys
"""
[입력]
T
n: p 수열의 개수
p: (n개) 수열
return 평범한 숫자의 개수
[주의]
- 최소도 최대도 아닌 평범한 숫자
"""
sys.stdin = open('input.txt', 'rt')
T = int(input())
for t in range(T):
n = int(input())
p = list(map(int, input().split()))
ans = 0
for i in range(1, n - 1):
_pi, pi, pi_ = p[i - 1], p[i], p[i + 1]
if any([_pi < pi < pi_, pi_ < pi < _pi]):
ans += 1
print(f"#{t + 1} {ans}")
모든 수열을 둘러 보는 것이 아니라 p[i-1], p[i], p[i+1] 이렇게 3개씩 봐야합니다.
# SW Expert 평범한숫자 Python python 파이썬 풀이
728x90
'✏️ 𝗔𝗹𝗴𝗼𝗿𝗶𝘁𝗵𝗺 > SW Expert Academy' 카테고리의 다른 글
[SW11315] 오목 판정 (0) | 2022.05.23 |
---|---|
[SW11387] 몬스터 사냥 (0) | 2022.05.23 |
[SW11445] 무한 사전 (0) | 2022.05.23 |
[SW1859] 백만장자 프로젝트 (0) | 2022.05.23 |
[SW11688] Calkin-Wilf tree 1 (0) | 2022.05.21 |