[C++] 백준 14890번 : 경사로

E woo·2023년 10월 4일
0

백준

목록 보기
17/18

문제


크기가 N×N인 지도가 있다. 지도의 각 칸에는 그 곳의 높이가 적혀져 있다.

오늘은 이 지도에서 지나갈 수 있는 길이 몇 개 있는지 알아보려고 한다. 길이란 한 행 또는 한 열 전부를 나타내며, 한쪽 끝에서 다른쪽 끝까지 지나가는 것이다.

다음과 같은 N=6인 경우 지도를 살펴보자.

이때, 길은 총 2N개가 있으며, 아래와 같다.

입력


첫째 줄에 N (2 ≤ N ≤ 100)과 L (1 ≤ L ≤ N)이 주어진다. 둘째 줄부터 N개의 줄에 지도가 주어진다. 각 칸의 높이는 10보다 작거나 같은 자연수이다.

출력


첫째 줄에 지나갈 수 있는 길의 개수를 출력한다.

풀이 및 코드


리뷰

단순 구현 문제이지만 경사로 체크에 대한 로직이 떠오르지 않았다.

배열 탐색을 열과 행으로 나누지 않고 열이나 행으로 고정하고 대칭을 이용해
같은 탐색 방식으로 접근할 수 있는 것은 새로웠다.

경사로 체크 부분은 정답을 보고 있어도 쉽게 떠오르지 않아서 접근 방식을 계속 보면서
익히는 것이 좋을 것 같다.

profile
뒘벼

0개의 댓글