qkrguswndk   2년 전

여러개 돌려봤는데 값은 잘 나오는데

백준에 넣으면 런타임 에러가 뜹니다..ㅠ

chogahui05   2년 전

일단 아래에서도 런타임이 뜨네요.

chogahui05   2년 전

qkr님 의도대로 머지를 수행하시려면..

int * U = (int *)malloc(sizeof(int)*(high - low + 1)*2);


int *U = (int *)malloc(sizeof(int)*배열 전체 사이즈);

로 바꾸셔야 겠죠. 그런데 이 경우는 공간 복잡도가 O(nlogn)쯤 됩니다.


int * U = (int *)malloc(sizeof(int)*(high - low + 1));

이 코드로 수행할 수 있는 방법이 있습니다. 이 경운 공간 복잡도가 O(n)이고요.

k값만 잘 변경하시면 런타임 안 뜹니다.

qkrguswndk   2년 전

감사합니다 해결되었습니다.

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