sujung4394   1년 전

이게 왜 메모리 초과가 나오는 지 모르겠어서 질문합니다. 

문제에서 메모리는 128MB가 조건이고 사이즈는 100 * 100 사이즈가 최대 사이즈 입니다. 

제가 생각한 최대 메모리는 100 * 100 사이즈 char* 배열 3개 해서 30000바이트, 

그리고 기타 변수들까지 하면 int형 9개로

30036바이트라고 생각했습니다. 

배열을 char형식으로 만든거는 int형 일 때도 메모리 초과였기 때문에 이렇게 만들었습니다. 

djm03178   1년 전

val1 * val2 크기의 배열이고 i가 val1까지 돈다면 공식은 val2 * i + j가 되어야 합니다. 각 줄에 val2개만큼의 수가 있기 때문에, 한 줄을 건너갈 때마다 val2개의 수를 건너뛰게 되고 그러한 줄이 val1개 있기 때문에 루프를 val1번 도는 것이기 때문입니다.

그냥 2차원 배열을 쓰시는 것을 추천드립니다.

sujung4394   1년 전

오 감사합니당. 수정했습니다. 근데 애초에 알고리즘이 틀린 것 같습니다. 이제는 틀렸습니다가 나오네요. 2차원 배열 쓰는게 답일 듯 합니다

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