qkqhxla1   7년 전

제가 짠 코드는 시간초과가 뜨는데....

아래 다른분의 질/답을 보면 입력받는 부분에서 행성간의 거리를 전부 다 초기화시키면 10만*10만으로 시간초과 에러가

나므로 최소 거리만 넣으라고 했는데요. 최소 거리를 판별하려고 해도 10만*10만번의 비교가 필요하지 않나요??

10만개가 들어왔다고 할 경우.

1번. 2~10만개까지 돌아가면서 x,y,z에 대해 거리계산해서 최솟값 구해서 연결해줌.

2번. 3~10만개까지 ~~

3번. 4~10만개까지~~

이런식으로 할수밖에 없을거같은데... '짧은 거리' 라는걸 어떻게 빠른 시간 안에 판별할 수 있을까요?

그리고 여기서의 '짧은 거리'란게 제가말한 가장 짧은 거리가 맞는지 궁금합니다.

f52985   7년 전

간단한 예시를 들어, 1차원 상에 1번,2번,3번,...n번 행성이 차례대로 있다고 가정해봅시다.

그러면 1번과 n번 행성 사이의 거리를 계산할 필요가 있을까요?

qkqhxla1   7년 전

질문을 올리고 말씀해주신것과 비슷한? 방법으로 풀긴 풀었습니다 감사합니다.

x,y,z좌표를 정렬후그냥 서로 i-1번째와 i번째는 다 이어주는식으로 했더니 시간초과 안떴습니다 감사합니다

whiteleo100   1년 전

1번과 n번 행성 사이의 거리를 왜 계산할 필요가 없나요..??

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