PAT (Advanced Level) Practice - 1064 Complete Binary Search Tree (30 분)

제목 링크: 클릭 하여 링크 열기
 
제목
 
문제 풀이 방향: 완전 이 진 트 리 는 이런 성질 이 있 습 니 다. 만약 에 a 노드 의 아래 가 i 라면 왼쪽 아들 의 아래 는 2i 이 고 오른쪽 아들 은 2i + 1 입 니 다. 이 아래 표 지 는 완전 이 진 트 리 가 층 차 를 옮 겨 다 닐 때의 출력 순서 입 니 다.검색 트 리 에 대해 서 는 순차 적 인 출력 이 증가 하 는 수열 입 니 다.이 두 가지 성질 에 따라 다음 과 같은 알고리즘 이 있 을 수 있다.
 
AC 코드
#include
#include

#define mem(a,b) memset(a,b,sizeof a);
#define INF 0x3f3f3f3f

using namespace std;

typedef long long ll;

int n,l;
int a[1005], rs[1005];

void dfs(int rt)
{
    if(rt<=n)
    {
        dfs(2*rt);
        rs[rt]=a[l++];
        dfs(2*rt+1);
    }
}

int main()
{
    while(~scanf("%d",&n))
    {
        l=0;
        for(int i=0;i

좋은 웹페이지 즐겨찾기