[ETC] #문제: 문제유형 / 난이도

문제 링크 : https://www.codetree.ai/ko/frequent-problems/problems/ancient-ruin-exploration/description

강의 링크 :

🔍 Inspection

문제 접근(문제 분석 → 풀이 아이디어)

유형 : 구현 + 그래프 탐색(BFS,DFS)

🚩 FLOW

코드를 풀이할 때 었던 플로우가 있나요?

[전체 Flow]

  1. 전체 K 번 반복
    1. 모든 경우의 수

      중심 좌표 9가지 * 각도 3가지 (90/180/270) = 27가지 경우의 value 값 구하기
      
      1. 회전 (rotate)

      2. 회전한 field 에서 획득한 유물 수 반환 : get old

      3. 리스트에 저장

        [유물 가치 , 회전 각도 , 중심 열 ,중심 행 , 삭제할 유물 ㅊ위치]

    2. 해당 턴에서 가장 Best 한 상황 선택

      <조건>

      (1) 유물 가치 ≠ 0 이면 종료

      (2) 유물 가치 최대 → (3) 회전 각도 최소 (4) 중심좌표 열 최소 (5) 중심 좌표 행 최소

    3. Best 한 상황에서 “유물 가치” 와 필드 상황 저장

    4. fiedld 상황 유물 매꾸기

      • 열이 작은순 ,행이 큰 순의 위치 부터 우선순위로 “유물벽화” 기준으로 새로운 유물 할당 받음

[구현한 함수 ]

  1. rotate
  2. get_old
  3. cur_best

🚩제출한 코드