3차원 배열

    [python3] 백준 1194 풀이 ( "달이 차오른다, 가자." , BFS )

    [python3] 백준 1194 풀이 ( "달이 차오른다, 가자." , BFS )

    이번 문제는 오랜만에 그래프이다. 우선 문제를 읽어보면 몇가지 포인트가 존재한다. 1. 이동 횟수의 최솟값을 구한다. => BFS로 푼다. 2. 키가 있어야 문을 열수 있다. => 키를 찾고 왔던길을 다시 갈 수 있다. => visited를 키에 따라 따로 관리해야 한다. => 그럼 키에 따른 visited를 관리해야한다. 따라서 3차원으로 visited를 관리해야 한다. * 이때 키는 bitmasking으로 관리해야 배열에 넣고 관리가 가능하다. 3차원으로 visited를 관리해야 하는 경우에는 [y][x][key]로 관리하여 key일때 y,x가 true 상태인지 false 상태인지 저장해준다. 사실 이러한 방식이 처음이라 이해가 어려웠다. 만약 key가 3이고(000000000011 => a,b키를 ..