gveinn   2년 전

제 나름대로 구조체를 사용하지 않고 풀어봤습니다.

추가로 제 코드에 대한 설명을 덧붙이자면, 나이, x좌표, y좌표를 모두 이어붙이는 방식으로 arraylist에 넣었습니다.

(예 : 32살 (7,8)에 있는 나무는 3267로 구조체에 넣음)

이렇게 했을 때 정렬하면 바로 나이 순으로 정렬된다는 점을 이용했습니다.

질문글들을 다 읽어봤는데 remove같은 경우는 arraylist에서 시간복잡도가 O(N)이라서 손해를 본다고 한 글을 봤습니다.

혹시 remove대신 다른 좋은 방법이 있을까요? 혹은 코드에서 시간복잡도를 줄일 다른 방법이 있을까요?

고수님들의 답변 기다리겠습니다. 감사합니다!

martin0327   1년 전

새로운 나무가 추가 될 때 나무의 나이가 항상 1이라는 점(가장 어린 나무)라는 점을 이용하면 좀 더 효율적으로 구현이 가능할 것 같습니다. 

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