어떤 목적으로 배열을 사용하는지는 모르겠지만,
그래프에서 인접 리스트 같은것을 말씀하신다면,
C++ 이라면 vector를 사용하면 되고,
라이브러리를 쓸 수 없다면 구현하면 됩니다 !
어떤 목적으로 배열을 사용하는지는 모르겠지만,
그래프에서 인접 리스트 같은것을 말씀하신다면,
C++ 이라면 vector를 사용하면 되고,
라이브러리를 쓸 수 없다면 구현하면 됩니다 !
변수를 메인함수같은 함수 내에서 선언을 하면 스택메모리에 할당이 됩니다. 그런데 이 스택이란놈이 크기가 몇MB 단위로 매우 작습니다. 따라서 int 100만개를 메인함수내에 선언을 해버리면 스택이 터져버리겠죠.
그런데 자세한 이유는 기억이 잘 안납니다만, 전역변수로 선언을 하게되면 백만개정도는 문제없이 잘 선언이 됩니다. 실제로 쓰이는 코드에서 전역변수를 저렇게 선언해버리면 큰일나겠지만, 적어도 백준에 제출하기 위한 용도라면 전역으로 아주 크게 선언해도 상관이 없을것 같습니다.
지역변수로 선언하시면 스택이 터져서 에러가 뜰 수 있고요
전역변수로 선언하시면 아주 잘 돌아갑니다.
댓글을 작성하려면 로그인해야 합니다.
gerard2001 6년 전
n[1000000]처럼 너무 않은 2차원 배열을 요구하면 에러가 뜨네요..
무슨 방법 없나요?(stdio.h입니다..)