1. 1. ЕНГІЗУ - ШЫҒАРУ
  2. 2. Шартты операторлар
  3. 3. Есептеулер
  4. 4. Цикл for
  5. 5. Мәтіндер
  6. 6. Цикл while
  7. 7. Тізімдер немесе Массивтер
  8. 8. Функция және рекурсия
  9. 9. Екі өлшемді массивтер
  10. 10. Жиындар
  11. 11. Сөздіктер

      Есептер

    1. Сөздің пайда болу нөмірі
    2. Синонимдер сөздігі
    3. АҚШ сайлауы
    4. Ең жиі кездесетін сөз
    5. Қатынас құқығы
    6. Жиілікті талдау
    7. Елдер мен қалалар
    8. Ағылшынша-латын сөздігі
    9. Күйзелістерді тексеру
    10. Сату
    11. Тұқымдық: деңгейлерді санау
    12. Тұқым: ата-бабалар мен ұрпақ
    13. Тұқымдық: LCA

11) «Шежіре: деңгейлерді санау»

Отбасы ағашында ата-бабадан басқа әрбір адамның дәл бір ата-анасы болады. Ағаштың әрбір элементі биіктік деп аталатын теріс емес бүтін санмен байланысты. Ата-бабаның биіктігі 0, кез келген басқа элементтің биіктігі оның ата-анасынан 1-ге артық. Сізге отбасылық ағаш беріледі, оның барлық элементтерінің биіктігін анықтаңыз. Бағдарлама кіріс ретінде N отбасылық ағаштағы элементтердің санын алады. Әрі қарай ата-бабадан басқа ағаштың әрбір элементі үшін ата-ананы көрсететін N−1 жолдар келеді. Әрбір жол еншілес_аты ата-ана_аты пішімінде болады. Бағдарлама лексикографиялық тәртіпте ағаштың барлық элементтерінің тізімін шығаруы керек. Әрбір элементтің атын көрсеткеннен кейін оның биіктігін көрсету керек. Ескерту Бұл мәселеде O(n) күрделілік шешімі бар, бірақ тек O(n2) күрделілік шешімін жазу керек (сөздік элементтеріне қол жеткізудің күрделілігін есептемегенде).

Барлық тапсырмаларда input() арқылы енгізуді оқыңыз және print() арқылы жауапты шығарыңыз.