4991번 - 로봇 청소기
안녕하세요 로봇청소기를 풀다가 헤매고 있는 코딩초보입니다ㅠㅠ
제가 짠 코드의 로직은 이렇습니다.
1. 각 먼지들에 순서대로 1부터 번호를 부여
2. 로봇청소기에 대해 bfs를 실행하여 모든 먼지들까지의 최단거리를 DP배열(인덱스는 0)에 저장
(만약 여기서 도달할 수 없는 먼지가 있으면 바로 -1을 출력하고 리턴)
3. 각 먼지들끼리 bfs를 실행하여 서로에 대한 최단거리를 DP배열(인덱스는 각 먼지들에 부여된 번호)에 저장
4. 순열을 활용하여 로봇에서부터 시작하여 모든 경로에 대한 최단거리를 계산
로직이 잘못된건지 코드가 잘못된건지 현재로썬 감이 잘 안오네요..
반례나 코드에 오류가 있으면 지적 부탁드립니다!!
댓글을 작성하려면 로그인해야 합니다.
morpheus 4년 전
안녕하세요 로봇청소기를 풀다가 헤매고 있는 코딩초보입니다ㅠㅠ
제가 짠 코드의 로직은 이렇습니다.
1. 각 먼지들에 순서대로 1부터 번호를 부여
2. 로봇청소기에 대해 bfs를 실행하여 모든 먼지들까지의 최단거리를 DP배열(인덱스는 0)에 저장
(만약 여기서 도달할 수 없는 먼지가 있으면 바로 -1을 출력하고 리턴)
3. 각 먼지들끼리 bfs를 실행하여 서로에 대한 최단거리를 DP배열(인덱스는 각 먼지들에 부여된 번호)에 저장
4. 순열을 활용하여 로봇에서부터 시작하여 모든 경로에 대한 최단거리를 계산
로직이 잘못된건지 코드가 잘못된건지 현재로썬 감이 잘 안오네요..
반례나 코드에 오류가 있으면 지적 부탁드립니다!!