(Java) 프로그래머스 - n^2 배열 자르기
·
코딩 테스트
이 문제를 해결하는데 이틀이 걸렸다. 별생각 없이 문제를 읽으면 어렵지 않을 것 같은데 함정이 난무한다.... 나는 함정카드에 모두 걸려서 리팩터링 하느라 한 번에 해결하지 못하고 이틀에 걸쳐 생각해서 풀었다. 문제에 친절하게 애니메이션으로 어떻게 구현해야 할지 알려준다. 근데 이 애니메이션이 바로 첫 번째 함정카드다. n의 크기가 매우 클수도 있기 때문에 애니메이션처럼 2차원 배열을 n만큼 선언하면 바로 메모리 초과가 난다. 대부분의 테스트 케이스는 메모리 초과, 그리고 몇 개의 케이스는 시간 초과가 난다. 그러면 애니메이션 2번째 그림처럼 처음부터 1차원 배열로 만들어야겠다는 생각이 들었는데 이것도 함정카드다. 생각대로면 int[] arr = new int[n * n]으로 만들어야 하는데 이것도 메모..