shjb07015   10달 전

qsort의 비교함수를

int compare(const void *a, const void *b)
{
return *(int *)a - *(int *)b;
}

라 정의하면 틀렸습니다가 나오고 

int compare(const void *a, const void *b)
{
int num1 = *(int *)a;
int num2 = *(int *)b;
if (num1 < num2) return -1;
if (num1 > num2) return 1;
return 0;
}

위와같이 정의하면 맞다고 하는데 꼭 -1,0,1이 아닌 음수 0 양수값을 반환하면 되는것 아닌가요? 

아니면 다른 잘못된 부분이 있는건가요?

iktk   10달 전

게시판에 같은 질문이 많습니다.

https://www.acmicpc.net/board/...

shjb07015   10달 전

오버플로우때문에 나눴어야했네요

답변 정말 감사합니다!!

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