ufshg   2년 전

안녕하세요? 많이 고민하다가 부득이하게 질문글 올리게 되었습니다. 도와주시면 감사하겠습니다.

아래처럼 코드를 작성했습니다. 많이 난잡해서 주석 첨부합니다.

알고리즘 상으로 놓친 점은 제가 잘 몰라서 그런지 보이질 않습니다...

아마 트리를 쌓는 과정에서 불필요한 부분들이 있는 것 같은데 파이썬으로 트리를 입력받아 구현하는 예시들은

구글에 검색해도 잘 나오질 않아서 제가 처음으로 구현해 본 것입니다.

파이썬으로 통과를 못하는 문제같진 않아서...

고수분들의 고견을 기다립니다!

kdyfloat   2년 전

a = 2 2 2 2, k = 3

search는 항상 리프까지 내려가기 때문에 범위를 일일이 k와 비교하는 것 보다 비효율적일 수 있습니다.

최대와 최소 트리를 같이 쓰면 그나마 효율적일 것 같습니다만,

a = 2 4 2 4, k = 3 과 같은 경우 결국 리프까지 내려가야 하므로 merge sort tree를 사용하시는게 가장 좋을 것 같네요.

ufshg   2년 전

아...! 들어주신 반례를 보고 깨달음을 얻었습니다. 감사합니다 다시한번 해보겠습니다!

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