Skip to content

Latest commit

 

History

History

14500

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

문제풀이

1x1 크기의 정사각형을 4개를 이어붙이면 테트로미노 5가지 모양만 있기 때문에 이어진 4개의 칸의 숫자를 더했을 때 가장 큰 경우를 구한다.

입력

  • n: 세로
  • m: 가로
  • n 줄에 숫자가 주어진다

로직

2차원배열로 순회화면서 각 칸에서 4개를 이어붙일 수 있는 경우의 수 (최대 5가지)에 대한 정수의 합을 구해서 가장 큰 값을 반환한다.

맞왜틀

  • 'ㅏ', 'ㅗ', 'ㅓ', 'ㅜ'와 같은 T 모양에 대한 고려를 하지 않아서 틀림

리팩토링

  • T 모양을 고려하기 위해서 depth 가 3일 때 열과 행의 좌표 -2 와 +2 일때 계산해서 통과했으나 속도가 매우 느림
  • depth가 2일 때 이전칸으로 되돌아와서 계산하는것이 효율적임
  • 최대값을 구해서 dfs 종료 조건에 추가하면 속도를 효율적으로 개선할 수 있음