gonni27   6년 전

어디가 틀렷는지 잘모르겟어요

질문게시판에있는 테스트 케이스는 다 문제없이 작동합니다

노드도 1000이상일수있어 넉넉하게 배열에 잡아놧고 소팅도 다 됬는데

채점하면 바로틀렸다고 나와요

aquarius456   6년 전

코드를 잘 읽었습니다. 

기본적으로 main에서 return 0을 해 주지 않으면 문제가 있어요.

두 번째로 node에서 다른 node로 갈 때는 한 방향성이 아닙니다. 양 방향성일 수 있기 때문에 

graph[from].push_back(to)는 물론

graph[to].push_back(from)도 해주셔야 합니다. 

그 외 문제는 딱히 발견되지 않습니다. 

다만 코드를 조금 더 수정하셔야 정답이 나올 것 같습니다.  (gonni27님 코드에서 몇 개 손을 보면 정답이 나옵니다. 로직 문제는 아니에요.)

gonni27   6년 전

aquarius456 님 정말 감사합니다

두 부분 고치니 바로 정답이 나오네요

 그런데 문제가 무엇인지 파악이 잘 안됩니다

양방향이랑 단방향이 이 문제에서 어떤 문제를 일으키는지

간단한 예시나 설명을 주시면 정말 좋을것 같습니다.

aquarius456   6년 전

문제를 보시면  '다음 M개의 줄에는 간선이 연결하는 두 정점의 번호가 주어진다.' 라고 되어 있습니다.

즉, from 에서 to 개념이 아닌, 두 정점이 연결되어 있음을 나타낸 것입니다.

그래서 from to의 개념으로 나아가시면 from에서 to로 가는 정보만 알 수 있지, to에서 from으로 가는 정보는 알 수 없습니다.

만약 예제를

4 5 1

4 1

4 2

4 3

3 1

2 1

로 고치면, 결과는 똑같아야 하지만 기본의 코드를 쓰시면 아마 원하시는 결과는 나오지 않을 것입니다.


gonni27   6년 전

aquarius456  매우감사합니다

왼쪽 입력값이 항상 부모노드가 되는지 알앗는데

제가 문제를 잘못이해했나봐요 ㅋ

정말 감사합니다

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