2957번 - 이진 탐색 트리
map 자료구조를 이용했구요
map<int, long long int> m;
자료형은 번호 k에 대한 레벨을 계속 맵에 저장했습니다.
다음 번 숫자에 대해서 왼쪽으로 가장 가까운 지점의 레벨, 오른쪽으로 가장 가까운 지점의 레벨을 찾고
만약 현재 숫자가 트리의 왼쪽 끝이면 왼쪽 끝의 레벨에 +1을 했고
현재 숫자가 트리의 오른쪽 끝이면 오른쪽 끝의 레벨에 +1을 했습니다.
그리고 중간이면 바로 앞의 레벨, 바로 뒤의 레벨을 참조해서 더 큰것보다 +1을 해서 map에 저장했습니다.
혹시 안되는 케이스좀 알 수 있을까요?
댓글을 작성하려면 로그인해야 합니다.
barcelonamessi 6년 전
map 자료구조를 이용했구요
map<int, long long int> m;
자료형은 번호 k에 대한 레벨을 계속 맵에 저장했습니다.
다음 번 숫자에 대해서 왼쪽으로 가장 가까운 지점의 레벨, 오른쪽으로 가장 가까운 지점의 레벨을 찾고
만약 현재 숫자가 트리의 왼쪽 끝이면 왼쪽 끝의 레벨에 +1을 했고
현재 숫자가 트리의 오른쪽 끝이면 오른쪽 끝의 레벨에 +1을 했습니다.
그리고 중간이면 바로 앞의 레벨, 바로 뒤의 레벨을 참조해서 더 큰것보다 +1을 해서 map에 저장했습니다.
혹시 안되는 케이스좀 알 수 있을까요?