adfsfsf   5년 전

잘은 모르겠는데, 재귀 함수를 구현한 것이 문제가 된 걸까요?

djm03178   5년 전

map은 int **형이므로 map[i]는 int형 포인터입니다. 따라서 map이 N개의 원소를 가지게 하려면 int *형 N개만큼의 메모리를 할당해 줘야 합니다. 그런데 15번째 줄에서는 int형을 N개 할당해주고 있습니다. 채점 서버에서 int는 4바이트, int *은 8바이트이므로 필요한 크기보다 적은 메모리를 할당해줬으므로 할당된 크기를 넘어갈 수 있습니다.

map = (int **)calloc(N, sizeof(int *)); 이 되어야 합니다.

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