일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- BFS
- 호이스팅
- dp
- 유니온파인드
- JavaScript
- kotlin
- 2023 KAKAO BLIND RECRUITMENT
- Lv3
- 자바
- const
- lv2
- level3
- 백준
- 브루트포스
- 코틀린
- 2018 KAKAO BLIND RECRUITMENT
- 자바스크립트
- 동적계획법
- java
- 2022 KAKAO BLIND RECRUITMENT
- 컴퓨터비전
- js
- 컴퓨터 비전
- 삼성SW역량테스트
- 프로그래머스
- 구현
- level2
- VAR
- 누적합
- 2021 KAKAO BLIND RECRUITMENT
- Today
- Total
목록삼성SW역량테스트 (2)
코드를 느껴바라

문제 링크성공 여부(걸린 시간): 성공(2시간 22분 40초)아이디어크게 함수는 turn(돌리기), gainFirst(탐색), gainSecond(채우고 돌리고 반복) 3개로 나눠서 생각했다.1단계중심축이 될 후보는 9개각 9개에서 3개의 각도로 돌릴수 있음총 27개의 돌리고 나서의유적지의 중심돌린 각도(t가 1이면 90 2면 180 3이면 270)돌렸을때의 유물 1차 획득 가치돌리고 나서의 map(유물이 출토된 부분은 0으로 채움)이 정보들을 ancient class로 저장하고 우선순위큐로 정렬했다.(중심의 위치가 i, j라고 했을때 비교는 문제에서 준대로 가치-> 회전각도 -> j-> i로 정렬함)여기서 가치는 높은 순대로 구현해야 하기에 어떻게 할지 고민해보았는데 reverse메소드는 오류가 나서가..
문제링크성공 여부(걸린 시간): 성공(2시간 27분)아이디어처음에 생각한 것은 순서: 상어입장-> 물고기 움직이기 -> 상어 이동에 맞게 크게 2가지로 구성했다.1.상어의 이동을 담당하는 재귀 함수(상어 위치, 맵 정보, 물고기 정보 배열, 먹은 물고기 번호의 합)2.상어가 이동하고 나서 번호순서대로 물고기가 이동하는 동작을 수행하는 물고기 움직이는 함수1번 shark함수에서 상어가 도착하고 물고기를 움직이고 상어가 다음 이동할 분기를 생성해주는 로직을 수행하는데이때 다음 상어에 대한 처리는 깊은 복사를 해주었다. 백트레킹 하듯 해주려고 했다.그러나 살아있는 모든 물고기가 움직이다 보니 물고기 정보나map을 매번 원상복구시키는 것이 복잡하다는 생각이 들었다. 그래서 4X4배열에 물고기의 종류도 16가지밖..