Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 플로이드-워셜
- 슬라이딩 윈도우
- 그래프
- SSAFY
- DFS
- JavaScript
- 맵
- BFS
- 수학
- boj
- 에라토스테네스의 체
- 그리디
- DP
- 구현
- 이분 탐색
- 13164
- 모던 JavaScript 튜토리얼
- 2357
- 세그먼트 트리
- 문자열
- 애드 혹
- 트리
- 싸피
- 투 포인터
- 누적 합
- Python
- 정렬
- 정수론
- 해시 테이블
- 브루트포스
Archives
- Today
- Total
목록1525 (1)
흙금이네 블로그

아이디어 BFS로 정리된 상태에서부터 초기 상태가 될 때까지 탐색해 나간다(반대의 경우도 가능). 풀이 퍼즐의 상태를 편리하게 나타내기 위해 문자열로 처리하고, 자리 이동이 가능한 인덱스들을 리스트 move에 저장한다. 초기 상태를 문자열로 result에 저장하고, 함수 find를 호출해 반환값을 출력하도록 한다. 함수 find에서는 덱 queue에 정리된 상태, 0의 위치, 이동 횟수를 튜플로 삽입하고 BFS한다. 초기 상태와 정리된 상태가 같은 경우 곧바로 0을 반환하고, queue가 빌 때까지 초기 상태가 되지 못하면 -1을 반환한다. 현재 상태 now, 0의 위치 idx, 현재 이동 횟수 cnt를 차례로 queue에서 꺼낸 다음, for문에서 이동 후의 상태 문자열 s를 만들고 s가 초기 상태 r..
알고리즘
2023. 1. 14. 21:39