Algorithm/Programmers93 [2020 카카오 기출] 자물쇠와 열쇠(JAVA) programmers.co.kr/learn/courses/30/lessons/60059 시뮬레이션 문제입니다. keySize = M * M인 열쇠(KEY) 크기에서 M을 의미합니다. lockSize = N * N인 자물쇠(LOCK) 크기에서 N을 의미합니다. 1. 주어진 열쇠에 대해 90, 180, 270도 회전한 형태를 계산하여 총 4개의 열쇠형태를 저장합니다. 2. 열쇠와 자물쇠가 한 칸이라도 맞닿아있는 경우를 계산하기 위해 2*M + N 크기의 배열을 만듭니다. 3. 2*M + N 배열의 한 가운데 지점에 LOCK 배열을 복사합니다. (즉, LOCK 배열 시작인덱스가 M,M) 4. KEY의 탐색 시작지점을 2중포문으로 (0,0)부터 (M+N, M+N)까지 지정 후 KEY로 자물쇠를 열 수 있는지 계.. 2021. 4. 21. [2019 카카오 기출] 크레인 인형뽑기 게임(JAVA) programmers.co.kr/learn/courses/30/lessons/64061 시뮬레이션 문제입니다. 맨 윗칸에 인형이 있는지만 체크하면 되므로 스택으로 정사각 격자를 관리했습니다. 또한 뽑은 인형 목록도 맨 윗 칸에 있는 인형이랑만 비교하면 되므로 스택을 사용했습니다. 나머지는 문제의 요구 조건대로 해결하면 됩니다. 코드: github.com/cotchan/algorithm/blob/main/java/PROGRAMMERS/PG64061.java 2021. 4. 14. [코딩테스트 연습] 방문 길이(py) programmers.co.kr/learn/courses/30/lessons/49994 방문했던 '길'을 구해야 하기 때문에 (시작 좌표, 도착 좌표)을 저장함으로써 구할 수 있습니다. 좌표로 저장을 한다면 [st_y][st_x][en_y][en_x] 4차원 배열이 되므로 번거롭습니다. 그래서 저는 그냥 좌표 (y,x)를 하나의 숫자로 표현해서 [ST_숫자][EN_숫자]로 방문했던 길을 표현했습니다. 방문했던 길이를 어떻게 저장할지만 결정하면 해결할 수 있는 문제입니다. 코드: github.com/cotchan/algorithm/blob/main/python/PROGRAMMERS/PG49994.py 2021. 2. 24. [2020 카카오 기출] 동굴 탐험 programmers.co.kr/learn/courses/30/lessons/67260 jacob님의 풀이(velog.io/@jacob0122/%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%98%EB%A8%B8%EC%8A%A4-%EB%8F%99%EA%B5%B4-%ED%83%90%ED%97%98)를 참고하여 해결했습니다. BFS로 풀이를 했고, 특정 노드간에 생기는 선-후 관계를 before[], nxt[]로 표현했습니다. 또한 임의의 노드 A를 방문할 수 있었지만, 노드A와 선-후 관계에서 '선'에 위치하는 노드를 아직 방문하지 않은 경우 노드A를 waitingList라는 set에 넣어서 '선'에 위치하는 노드를 방문할 때 노드 A도 방문할 수 있도록 해줍니다. 이런식으로 BFS를 특수하게.. 2020. 9. 10. 이전 1 ··· 6 7 8 9 10 11 12 ··· 24 다음