알고리즘
백준#1697 숨바꼭질
난이도 : 실버1소요시간 : 1시간 28분사용한 풀이법 : dfs,queue풀이 과정1. 수빈 현 위치로 부터의 거리 측정용 배열 dist[], 이동 가능 위치 체크용 큐 Q[] 생성;2. dist[]는 -1로 초기화, Q[]에 수빈 현위치 push;3. dist[k]에 값이 들어가기 전까지 while 루프{}4. 현위치 확인용 변수 cur에 Q.front() 대입;5. cur이 -1, +1,*2 일때의 상황 for문 돌리면서 bfs 진행6. 조건 충족 시, 해당 상황의 dist 값을 dist[cur]+1로 설정;7. while 탈출 시 dist[k]값 출력;#include #include using namespace std;queue Q;int dist[100002];int main(){ ios..
2024. 2. 4. 18:05