a41798175   1년 전

현재 가방의 최대 무게를 list로 저장해서 get(int index)와 remove(int index)에서 시간이 너무 오래 걸립니다. (10%에서 시간초과)

C++이라면 multiset을 쓰는게 제일 좋아보이는데(중복 + lower bound), 직접 BST를 구현하는게 속이 편할까요?

invrtd_h   1년 전

list에서 remove하는 건 한 번당 O(n)이라 당연히 시간 초과고요, priority queue로 풀이 가능합니다. 그냥 BST를 쓰는 건 극단적 케이스 때문에 시간 초과 날 것 같고요, BBST로 풀고 싶다면 제가 옛날에 AVL tree를 구현해서 플래 3 문제를 풀어야 할 일이 있었는데(그 문제는 심지어 더 쉬운 풀이가 정해였음) 코드가 360줄이 나왔습니다. 그러니 무슨 ICPC world final 준비라도 하는 게 아니면 굳이 BBST를 구현해야 할까...? 싶은 생각이 듭니다.

a41798175   1년 전

답변 감사합니다.

bamgoesn   1년 전

자바에 트리맵 트리셋 있지 않나요?

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