본문 바로가기
  • "하나씩 기록하다보면 누군가에게 도움이 되지 않을까"
IT/알고리즘 풀이

[백준] [Java] 14500번 : 테트로미노

by raVineL 2021. 2. 17.
728x90

출처 : www.acmicpc.net/problem/14500

 

14500번: 테트로미노

폴리오미노란 크기가 1×1인 정사각형을 여러 개 이어서 붙인 도형이며, 다음과 같은 조건을 만족해야 한다. 정사각형은 서로 겹치면 안 된다. 도형은 모두 연결되어 있어야 한다. 정사각형의 변

www.acmicpc.net

1. 풀이 접근

  • 테트로미노 5가지 모양에 따라 기준점으로 부터 검색할 곳으로 배열로 선언 (회전시 모양도 기준점으로부터 다 미리 작성해서 반영해둠)
  • 기준점(모든 맵 좌표)에 따라서 넘어 가면서 검색하면서 맵 안에 있을 시 더함
  • ㅗ 모양은 기준점으로 가운데 기준점으로 부터 BFS로 확인, 나머지모양은 기준점으로부터 DFS로 확인 (맞는지 잘 모르겠음, 그냥 이동방향에 따라서 계속 탐색)
  • 끝까지 다 탐색해도 맵 안에 있을 경우 값을 더해서 최대값이랑 비교

2. 소스코드

github.com/Choi-JinYeong/Solve_Alg/tree/master/Solve_Algorithm/src/Sol_BJ_14500

 

Choi-JinYeong/Solve_Alg

알고리즘 풀이. Contribute to Choi-JinYeong/Solve_Alg development by creating an account on GitHub.

github.com

 


3. 맺음말

 더욱 좋은 풀이방법이나 보완할 수 있는 부분, 또는 문제가 될 수 있는 부분들은 알려주시면 감사하겠습니다.

728x90

댓글