۰
subtitle
تاپیک زیر خاکی!
الگوریتم این کار این طوری میشه:
از راس بالا شروع می کنیم.
در هر سطر هر عدد موجود در اون سطر رو با max دوتا عدد بالایی جمع می کنیم.
مثلا تو سوال بالا اولین عدد ۷ هست که کاری باهاش نداریم چون عنصر بالایی نداره.
سطر بعدی اعداد ۳ و ۸ رو داریم.
۳ رو با ماکزیمم اعداد بالایی یعنی ۷ جمع می کنیم میشه ۳+۷=۱۰
۸ رو با ماکزیمم اعداد بالایی یعنی ۷ جمع می کنیم میشه ۸+۷=۱۵
میریم سطر بعدی:
۸ و ۱ و ۰
۱۸=۸+(max(10
۱۶=۱+(max(10,15
۱۵=۰+(max(15
سطر بعدی:
۲و ۷ و ۴ و ۴
۲۰=۲۰ +(max(18
۲۵=۷+(max(16,18
۲۰=۴+(max(16,15
۱۹=۴+(max(15
برای سطر بعدی هم به همین ترتیب ادامه میدیم.
به نظر من چون تو این الگوریتم پیداکردن ماکزیمم و بررسی هر گره مورد توجه هست و اینکه پیداکردن ماکزیمم در زمان (۱)o انجام میشه پس پیداکردن ماکزیمم زمان بر نیست.
چون تعداد گره ها برابر است با ۲/ (n*(n+1
پس مرتبه الگوریتم هم n^2 می شود.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.
الگوریتم این کار این طوری میشه:
از راس بالا شروع می کنیم.
در هر سطر هر عدد موجود در اون سطر رو با max دوتا عدد بالایی جمع می کنیم.
مثلا تو سوال بالا اولین عدد ۷ هست که کاری باهاش نداریم چون عنصر بالایی نداره.
سطر بعدی اعداد ۳ و ۸ رو داریم.
۳ رو با ماکزیمم اعداد بالایی یعنی ۷ جمع می کنیم میشه ۳+۷=۱۰
۸ رو با ماکزیمم اعداد بالایی یعنی ۷ جمع می کنیم میشه ۸+۷=۱۵
میریم سطر بعدی:
۸ و ۱ و ۰
۱۸=۸+(max(10
۱۶=۱+(max(10,15
۱۵=۰+(max(15
سطر بعدی:
۲و ۷ و ۴ و ۴
۲۰=۲۰ +(max(18
۲۵=۷+(max(16,18
۲۰=۴+(max(16,15
۱۹=۴+(max(15
برای سطر بعدی هم به همین ترتیب ادامه میدیم.
به نظر من چون تو این الگوریتم پیداکردن ماکزیمم و بررسی هر گره مورد توجه هست و اینکه پیداکردن ماکزیمم در زمان (۱)o انجام میشه پس پیداکردن ماکزیمم زمان بر نیست.
چون تعداد گره ها برابر است با ۲/ (n*(n+1
پس مرتبه الگوریتم هم n^2 می شود.
مهمان عزیز شما قادر به مشاهده پیوندهای انجمن مانشت نمیباشید. جهت مشاهده پیوندها ثبت نام کنید.