백준 5639번 (이진 검색 트리, C++) [BAEKJOON]

이진 검색 트리

https://www.acmicpc.net/problem/5639

시간 제한메모리 제한제출정답맞힌 사람정답 비율
1 초256 MB3544213888982138.260%

문제

이진 검색 트리는 다음과 같은 세 가지 조건을 만족하는 이진 트리이다.

  • 노드의 왼쪽 서브트리에 있는 모든 노드의 키는 노드의 키보다 작다.
  • 노드의 오른쪽 서브트리에 있는 모든 노드의 키는 노드의 키보다 크다.
  • 왼쪽, 오른쪽 서브트리도 이진 검색 트리이다.

전위 순회 (루트-왼쪽-오른쪽)은 루트를 방문하고, 왼쪽 서브트리, 오른쪽 서브 트리를 순서대로 방문하면서 노드의 키를 출력한다.

후위 순회 (왼쪽-오른쪽-루트)는 왼쪽 서브트리, 오른쪽 서브트리, 루트 노드 순서대로 키를 출력한다.

예를 들어, 위의 이진 검색 트리의 전위 순회 결과는 50 30 24 5 28 45 98 52 60 이고, 후위 순회 결과는 5 28 24 45 30 60 52 98 50 이다.

이진 검색 트리를 전위 순회한 결과가 주어졌을 때, 이 트리를 후위 순회한 결과를 구하는 프로그램을 작성하시오.

입력

트리를 전위 순회한 결과가 주어진다.

노드에 들어있는 키의 값은 106보다 작은 양의 정수이다.

모든 값은 한 줄에 하나씩 주어지며, 노드의 수는 10,000개 이하이다.

같은 키를 가지는 노드는 없다.

출력

입력으로 주어진 이진 검색 트리를 후위 순회한 결과를 한 줄에 하나씩 출력한다.

예제 입력 1

50
30
24
5
28
45
98
52
60

예제 출력 1

5
28
24
45
30
60
52
98
50

출처

ICPC > Regionals > Asia Pacific > Thailand > 2011 ACM-ICPC Asia Phuket Regional Programming Contest B번

알고리즘 분류


통과된 코드

#include <iostream>

using namespace std;

struct BinaryNode
{
    int _Num;
    BinaryNode* _Left;
    BinaryNode* _Right;

    BinaryNode(int num)
        : _Num(num), _Left(nullptr), _Right(nullptr)
    {}

    void ArrayBinaryNode(int _n)
    {
        if (_Num > _n) {
            if (_Left == nullptr) _Left = new BinaryNode(_n);
            else _Left->ArrayBinaryNode(_n);
        }
        else {
            if (_Right == nullptr) _Right = new BinaryNode(_n);
            else _Right->ArrayBinaryNode(_n);
        }
    }
};

void PostorderTraverse(BinaryNode& CurrentNode)
{
    if (CurrentNode._Left != nullptr) PostorderTraverse(*CurrentNode._Left);
    if (CurrentNode._Right != nullptr) PostorderTraverse(*CurrentNode._Right);
    cout << CurrentNode._Num << "\n";
}


int main()
{
    ios_base::sync_with_stdio(false);
    cin.tie(NULL);
    cout.tie(NULL);

    int _N;
    cin >> _N;
    BinaryNode _RootNode(_N);
    while (true) {
        cin >> _N;
        if (cin.eof() == true)
            break;
        _RootNode.ArrayBinaryNode(_N);
    }

    PostorderTraverse(_RootNode);

	return 0;
}

“백준 5639번 (이진 검색 트리, C++) [BAEKJOON]”에 대한 1,445개의 생각

  1. https://anyflip.com/homepage/cdjul#Home

    Hey everyone! I just wanted to share my experience with an IT networking event I’ve been participating in, and it’s been a game-changer for my professional development. I’ve been in IT for a while now, and while there are plenty of online communities, this roundtable format has been a lot more valuable than I expected.

    What I really like about it is that it’s not just about exchanging tips or asking questions (which is great on its own), but it goes deeper. It’s a space where professionals from all over the IT spectrum come together to discuss real-world challenges, share strategies, and even collaborate on solutions. It’s like having access to a group of mentors and peers at the same time, which is something I hadn’t found in other networking events or forums.

    For me, the biggest benefit has been learning from other experts who are working on similar projects or facing similar issues. Whether it’s tackling cloud migrations, optimizing network security, or implementing new cyber security processes, there’s always someone who’s been there and done that, and it’s been super helpful to hear their firsthand insights.

    The roundtable sessions are structured but still open enough for organic conversations, which means you get to dive into topics that matter most to you. Plus, it’s great for building long-term professional relationships. I’ve already connected with a few people who I wouldn’t have met otherwise, and we’ve been able to bounce ideas off each other even outside of the sessions.

    If you’re looking to level up your IT network or just want to connect with other professionals facing similar challenges, I’d definitely recommend checking it out. It’s been an awesome resource for me, and I think others would find it just as useful. Anyone else here part of something similar? Would love to hear about your experiences!

  2. Продвижение сайта услуги – это комплекс мероприятий, направленных РЅР° улучшение видимости веб-ресурса РІ поисковых системах Рё, как следствие, привлечение целевого трафика. Р’ SEO продвижении важно учитывать множество факторов, начиная СЃ технической оптимизации Рё заканчивая контент-стратегиями. Техническая оптимизация включает РІ себя улучшение скорости загрузки страниц, обеспечение мобильной совместимости Рё правильную настройку индексации, что позволяет поисковым роботам эффективно сканировать Рё индексировать сайт. Контент играет ключевую роль: качественные, уникальные, Рё релевантные материалы СЃ правильным использованием ключевых слов РјРѕРіСѓС‚ значительно повысить позиции сайта РІ результатах РїРѕРёСЃРєР°. Важно учитывать, что поисковые алгоритмы постоянно обновляются, поэтому стратегия продвижения должна быть РіРёР±РєРѕР№ Рё адаптивной. Ссылочная масса или линкбилдинг, включая как внутренние, так Рё внешние ссылки, также способствует росту авторитета сайта. Продвигать сайт также стоит через социальные сети, так как это помогает РІ привлечении дополнительного трафика Рё укреплении бренда. Аналитика Рё мониторинг результатов обязательны: инструменты как Google Analytics Рё Яндекс.Метрика помогают отслеживать поведение пользователей Рё эффективность различных стратегий, корректируя РёС… РїСЂРё необходимости. Важно помнить, что SEO продвижение – это длительный процесс, требующий постоянной работы Рё адаптации Рє изменениям РІ алгоритмах поисковых систем.

    Источник

  3. Продвижение сайта в поисковых системах является стратегически важным аспектом современного интернет-маркетинга, позволяющим значительно повысить видимость онлайн-ресурса, привлечь целевой трафик и, в конечном итоге, увеличить продажи или другие конверсии. Вопреки популярным мифам, успешное SEO продвижение требует комплексного подхода, который включает в себя как техническую оптимизацию сайта, так и создание качественного контента. На техническом уровне важно обеспечить быстрый загрузку страниц, наличие удобной мобильной версии, правильную структуру URL и корректное использование тегов HTML. Контентная стратегия, в свою очередь, должна основываться на тщательном анализе ключевых слов и потребностей целевой аудитории, создание уникальных и полезных материалов, которые будут привлекать пользователей и стимулировать их проводить больше времени на сайте. Внутренние и внешние ссылки также играют значимую роль, способствуя распределению веса (PageRank) между страницами и увеличению авторитета домена. Не стоит забывать и о локальном SEO, особенно если ваш бизнес ориентирован на определенный регион: регистрация в Google My Business и оптимизация под локальные запросы поможет вам стать более заметным на карте. Важно понимать, что продвижение сайта — это не разовая акция, а постоянный процесс. Постоянный мониторинг метрик, анализ поведения пользователей, и непрерывная корректировка стратегии позволят вам удерживать лидирующие позиции в поисковой выдаче и оставаться на шаг впереди конкурентов.

    Источник

  4. https://bandcamp.com/itroundtable

    Hey everyone! I just wanted to share my experience with an IT networking event I’ve been participating in, and it’s been a game-changer for my professional development. I’ve been in IT for a while now, and while there are plenty of online communities, this roundtable format has been a lot more valuable than I expected.

    What I really like about it is that it’s not just about exchanging tips or asking questions (which is great on its own), but it goes deeper. It’s a space where professionals from all over the IT spectrum come together to discuss real-world challenges, share strategies, and even collaborate on solutions. It’s like having access to a group of mentors and peers at the same time, which is something I hadn’t found in other networking events or forums.

    For me, the biggest benefit has been learning from other experts who are working on similar projects or facing similar issues. Whether it’s tackling cloud migrations, optimizing network security, or implementing new cyber security processes, there’s always someone who’s been there and done that, and it’s been super helpful to hear their firsthand insights.

    The roundtable sessions are structured but still open enough for organic conversations, which means you get to dive into topics that matter most to you. Plus, it’s great for building long-term professional relationships. I’ve already connected with a few people who I wouldn’t have met otherwise, and we’ve been able to bounce ideas off each other even outside of the sessions.

    If you’re looking to level up your IT network or just want to connect with other professionals facing similar challenges, I’d definitely recommend checking it out. It’s been an awesome resource for me, and I think others would find it just as useful. Anyone else here part of something similar? Would love to hear about your experiences!

댓글 달기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

위로 스크롤