3197번 - 백조의 호수
제 나름대로 괜찮은 반례를 다 넣어보았지만 문제 없이 잘 돌아갔습니다. 저의 알고리즘에 문제가 있는 듯 합니다만 잘 찾을수 없어서 글 올립니다.
저는 유니온 파인드와 bfs 를 썼는데요,
1 - '.' 부분을 집합별로 숫자로 나타낸다 (makeNum 함수 구현)
2 - 주변에 X 인것을 골라 큐에 넣어준다 (putQueue 함수 구현)
3 - BFS 구현
3 - 1 - 얼음을 녹이는 과정에서 근처에 다른 집합 (num[][]) 의 얼음이 있으면 merge 를 해준다
3 - 2 - 같은 집합이 되면 함수를 종료하고 답을 도출한다
댓글을 작성하려면 로그인해야 합니다.
swrho 2년 전
제 나름대로 괜찮은 반례를 다 넣어보았지만 문제 없이 잘 돌아갔습니다. 저의 알고리즘에 문제가 있는 듯 합니다만 잘 찾을수 없어서 글 올립니다.
저는 유니온 파인드와 bfs 를 썼는데요,
1 - '.' 부분을 집합별로 숫자로 나타낸다 (makeNum 함수 구현)
2 - 주변에 X 인것을 골라 큐에 넣어준다 (putQueue 함수 구현)
3 - BFS 구현
3 - 1 - 얼음을 녹이는 과정에서 근처에 다른 집합 (num[][]) 의 얼음이 있으면 merge 를 해준다
3 - 2 - 같은 집합이 되면 함수를 종료하고 답을 도출한다