bklove91   2년 전

20%정도 채점되다가 런타임 에러가 뜨네요..

도대체 뭐가 문제일까요.. 도와주세요 ㅜㅜ

djm03178   2년 전

int = 4바이트

20000 * 20000 = 4억

adj ~= 16억 바이트 ~= 1.49GB

jupiny   2년 전

메모리 초과 문제라면 왜 처음엔 에러가 발생하지 않고 20%에서만 나타나는 걸까요??

djm03178   2년 전

아마도, 운영체제가 메모리를 처음부터 다 할당해주고 시작하는 것이 아니라, 실제로 접근하려는 시도가 있을 때까지는 할당을 보류해두었을 거라고 생각되네요. 정점의 수가 적을 때는 높은 인덱스에 접근할 일이 없었을 테니 문제 없이 넘어간 듯하고요.

jupiny   2년 전

아 그럴 수도 있나보군요. 컴파일할 때 배열의 크기만큼 항상 처음에 할당되는 거라 생각했었네요.

답변 감사합니다 :D

bklove91   2년 전

답변해주셔서 감사합니다

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