문제)
정답 코드)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
import sys
#sys.stdin = open("input.txt", 'r')
dx=[-1, 0, 1, 0]#상하좌우 탐색을 위함.
dy=[0, 1, 0, -1]#상하좌우 탐색을 위함.
n=int(input())
a=[list(map(int, input().split())) for _ in range(n)]
######0으로 배열 둘러 싸기#######
a.insert(0, [0]*n)#최상단에 0배열 추가
a.append([0]*n)#최하단에 0배열 추가
for x in a:#각 행마다 맨 앞, 맨 뒤에 0추가
x.insert(0, 0)
x.append(0)
###############################
cnt=0#정답
for i in range(1, n+1):#0으로 둘러싼 부분 제외하고 반복
for j in range(1, n+1):
if all(a[i][j]>a[i+dx[k]][j+dy[k]] for k in range(4)):#상하좌우 값보다 모두 크다면,
cnt+=1#봉우리 갯수 추가
print(cnt)
|
cs |
'코딩테스트 with PYTHON' 카테고리의 다른 글
[python] 코딩테스트 대비 - 2차원 배열에서 회문 탐색 (0) | 2022.01.10 |
---|---|
[python] 코딩테스트 대비 - 스토쿠 검사 (0) | 2022.01.10 |
[python] 코딩테스트 대비 - 2차원 배열 회전 및 모래시계 탐색 (0) | 2022.01.10 |
[python] 코딩테스트 대비 - 2차원배열 다이아몬드 (0) | 2022.01.10 |
[python] 코딩테스트 대비 - 2차원 배열 합 (0) | 2021.12.20 |