mwy3055   5년 전

다익스트라를 수행해서, 최단경로에 포함된 간선을 모두 지운 후, 다시 다익스트라를 수행하는 코드입니다.

어째서인지 런타임 에러를 받았습니다. 조언 부탁드립니다.

djm03178   5년 전

하나의 벡터에서 어떤 원소가 erase 되면 기존에 그 벡터에 대한 iterator들은 모두 무효화됩니다. 이는 벡터에서 어떤 원소를 지우는 연산이 그 뒤의 모든 원소들을 전부 한 칸씩 당겨오는 연산을 포함하고 있댜는 것을 생각하면 확연합니다. 그래서 하나의 벡터에 대해 기존에 얻어놓은 iterator를 여러 개 지워서는 안 됩니다.

mwy3055   5년 전

그럼 저장하지 말고 찾을 때마다 지워야겠네요.

댓글을 작성하려면 로그인해야 합니다.