|
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 3
|
||||||
Проверка корректности двоичного дерева24.03.2017, 00:21. Показов 10121. Ответов 2
Метки нет (Все метки)
Здравствуйте!
Задача такая, Свойство двоичного дерева поиска можно сформулировать следующим образом: для каждой вершины дерева V выполняется следующее условие: • все ключи вершин из левого поддерева меньше ключа вершины V ; • все ключи вершин из правого поддерева больше ключа вершины V . Дано двоичное дерево. Проверьте, выполняется ли для него свойство двоичного дерева поиска. Формат входного файла Входной файл содержит описание двоичного дерева. В первой строке файла находится число N (0 ≤ N ≤ 200000) — число вершин в дереве. В последующих N строках файла находятся описания вершин дерева. В (i + 1)-ой строке файла (1 ≤ i ≤ N) находится описание i-ой вершины, состоящее из трех чисел Ki, Li, Ri разделенных пробелами — ключа в i-ой вершине (|Ki| ≤ 10^9), номера левого ребенка i-ой вершины (i < Li ≤ N или Li = 0, если левого ребенка нет) и номера правого ребенка i-ой вершины (i < Ri ≤ N или Ri = 0, если правого ребенка нет). Формат выходного файла Выведите «YES», если данное на входе дерево является двоичным деревом поиска, и «NO», если не является. пример входного файла: 3 5 2 3 6 0 0 4 0 0 пример выходного файла: NO пример входного файла: 6 -2 0 2 8 4 3 9 0 0 3 5 6 0 0 0 6 0 0 пример выходного файла: YES Я считываю само дерево, далее вызываю функцию, которая начинает от корня дерева и в случае, если с корнем и его детьми все ок, запускается для каждого из детей. Считаю, что корень дерева - первый элемент массива (в условии не сказано, но вроде это так) на всех моих тестах работало, но в проверяющей системе не проходит тест 8 ![]() вот мой код:
0
|
||||||
| 24.03.2017, 00:21 | |
|
Ответы с готовыми решениями:
2
Пример двоичного дерева Проверка корректности ввода Проверка корректности ввода |
| 24.03.2017, 01:50 | ||||||
|
Однако, вижу 3 возможных варианта:
- не проходит по времени - неправильно строится дерево - неправильно проверяется дерево Навскидку кот. Конечно при 200000 элементах надо !! по списку заменить на вектор / сет / мап или т.п. со скоростью доступа О(1) / О(log n)
0
|
||||||
|
0 / 0 / 0
Регистрация: 17.02.2017
Сообщений: 3
|
|
| 24.03.2017, 21:35 [ТС] | |
|
Честно говоря синтаксис совсем непонятен) в принципе проблем с реализацией того или иного алгоритма нет, вопрос в том, что раз система не принимает решение (которое было переписано в различных вариациях схожих по смыслу), то проблема в самом алгоритме)
З.Ы. решение выдает неверный ответ, а по времени все ок) возможно кто-нибудь посоветует какой-нибудь алгоритм, или укажет, чего я не учитываю или не вижу?... ![]()
0
|
|
| 24.03.2017, 21:35 | |
|
Помогаю со студенческими работами здесь
3
Проверка корректности данных
Не работает проверка корректности Удаление корня двоичного дерева Алгоритм реализации двоичного дерева Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
||||
|
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение.
И на уровне агентов добавится между грибами или бактериями взаимодействий.
До того я пробовал подход через многомерные массивы,. . .
|
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Programma_Boinc 01.01.2026
Учёным и волонтёрам проекта «Einstein@home» удалось обнаружить четыре гамма-лучевых пульсара в джете Млечного Пути
Сочетание глобально распределённой вычислительной мощности и инновационных. . .
|
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Налог на собак: https:/ / **********/ gallery/ V06K53e
Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf
Пост отсюда. . .
|
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop?
Ниже её машинный перевод.
После долгих разбирательств я наконец-то вернула себе. . .
|
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод
Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод.
Thinkpad X220 Tablet —. . .
|
|
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта
Симптом:
После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
|
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
|
Новый ноутбук
volvo 07.12.2025
Всем привет.
По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне:
Ryzen 5 7533HS
64 Gb DDR5
1Tb NVMe
16" Full HD Display
Win11 Pro
|
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
|
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
|