اولین باره که به کاهو میای؟ راهنمای سایت رو حتما بخون!

ورود ثبت‌نام راهنما درباره‌ی کاهو
پرسش‌ها برچسب‌ها کاربر‌ها سوال بپرسید!

آمار پرسش:

  • پرسیده شده: 2014-09-03 04:45:23 -0500
  • مشاهده شده: 663 بار
  • بروز شده: 2015-04-24 08:09:14 -0500

پرسش‌های مشابه:

سوال 1- ثابت کنید با استفاده از ماشین مبدل دودویی می توان هر عدد دودویی با n رقم را به هر عدد دودویی با nرقم تبدیل کرد.

سوال 3- صفر کردن تمام اعداد یک جدول جادویی

سوال4 - ارائه روشی برای مرتب‌سازی کارت‌ها با هرگونه وضعیت اولیه قرار گرفتن در ماشین

سوال 5 - ترتیب کارت‌ها در ماشین درهم‌ساز

سوال ۱ روز دوم مرحله ۲ دوره ۲۳: رشته‌ی نزدیک

بازی رنگی - سوال ۱ - مرحله ۲ - ۱۳۹۳

وزنه‌ها و ماشین جادویی - سوال ۲ - مرحله ۲ - ۱۳۹۳

گاوی خسیس - سوال ۳ - مرحله ۲ - ۱۳۹۳

انتقال مهره‌های گاوی - سوال ۴ - مرحله ۲ - ۱۳۹۳

یافتن کوچکترین پیچ و مهره با مقایسه آنها

نکاتی در مورد نوشتن پاسخ:

در این قسمت می‌تونی به یک پرسش پاسخ بدی. اگه می‌خوای در مورد پرسش بحث و اظهار نظر کنی از قسمت «ثبت نظر» استفاده کن.
پاسخت رو دقیق و کامل بنویس، از عکس استفاده کن و اگه لازمه به منابع (کتاب یا سایت) ارجاع بده.
اگه پرسش یا پاسخ‌ها مفید هستند حتما بهشون رای بده تا پرسش‌ها و پاسخ‌های خوب مشخص بشن.

استفاده از ویرایشگر:

توی قسمت پیش‌نمایش می‌تونی ببینی متنی که نوشتی چجوری روی سایت دیده میشه.
خیلی مهم: برای اینکه به خط بعد بری باید دوتا Enter بزنی.
می‌تونی از تگ‌های معمولی و ساده‌ی html هم استفاده کنی.
با دکمه‌هایی که بالای ویرایش‌گر قرار دارند کلی کار می‌شه کرد. از عکس‌گذاشتن بگیر تا لیست شماره‌دار. حتما امتحان‌شون کن.

علائم ریاضی:

برای نوشتن علائم ریاضی می‌تونی از Mathjax استفاده کنی. راهنمای Mathjax رو از سایت math.stackexchange بخون.
برای نوشتن عبارت ریاضی وسط جمله، اون عبارت رو بین دوتا $ قرار بده.
برای نوشتن عبارت ریاضی تو یه خط جدید اون رو بین دوتا $$ قرار بده.

سوال2- پاک کردن یال‌های یک درخت ریشه‌دار در کم‌ترین تعداد مرحله

8

گراف همبند و بدون دور را درخت گویند. درخت $T$ را از راس $r$ به این صورت ریشه دار می کنیم که درخت را از راس $r$ آویزان می کنیم و تمام یال ها را از بالا به پایین جهت دار می کنیم. به بیانی دیگر یال های درخت را به این صورت جهت دار می کنیم که تمام یال های متصل به $r$ را از $r$ به سمت بیرون جهت می دهیم، و بقیه ی یال ها را طوری جهت دهی می کنیم که تعداد یال های وارد شده به هر راس به غیر از $r$ برابر 1 شود.دقت کنید که در این صورت تعداد یال های وارد شده به $r$ برابر صفر است. فاصله ریشه تا راس دلخواه $i$، برابر تعداد یال هایی است که برای رسیدن از ریشه به راس $i$ طی میکنیم. برای مثال درخت شکل زیر را از راس سیاه رنگ ریشه دار کرده ایم. هم چنین فاصله بعضی از راس ها تا ریشه در شکل نشان داده شده است.

image description

هدف پاک کردن یال های یک درخت ریشه دار در کمترین تعداد مرحله است. در هر مرحله مجاز به انجام یکی از دو عملیات زیر برای هر درخت ریشه دار باقی مانده هستیم:

  • عملیات اول: تمام یال های متصل به ریشه را پاک کن.
  • عملیات دوم: یکی از راس هایی که بیشترین فاصله را تا ریشه دارند مانند $i$ انتخاب کن. از ریشه و از روی یال ها و در جهت یال ها به سمت $i$ حرکت کن و یال هایی که از آنها عبور کرده ای را پاک کن.

در حقیقت در هر مرحله می توان بر روی هر درخت ریشه دار باقی مانده، هر یک از عملیات اول یا دوم را انجام داد. دقت کنید که با پاک شدن یال ها، هر درخت ریشه دار به یک یا چند درخت ریشه دار تبدیل می شود. برای مثال در شکل تمام یال های درخت اولیه در 3 مرحله پاک شده اند. در این شکل ریشه ی درخت ها با رنگ سیاه نشان داده شده اند. دقت کنید که بعد از مرحله ی اول درخت ریشه دار اولیه با 12 راس، به 4 درخت ریشه دار با 3، 1، 1 و 7 راس تبدیل شده است.

image description

الف) یک درخت ریشه دار با 100راس داده شده است. روشی ارائه دهید که در 14 مرحله تمام یال های آن را پاک کند.

ب) یک درخت ریشه دار با 100 راس مثال بزنید که در کمتر از 10 مرحله نتوان تمام یال های آن را پاک کرد.

۱۳۹۰ مرحله۲
2014-09-03 04:45:23 -0500
محمدی 2185 ● 55 ● 63 ● 94
پاک‌کردن   ویرایش سوال
نظرات

سلام میدونستید انجمن علمی نخبگان دانشگاه صنعتی شریف مسابقه تخصصی مهارت سنجی برنامه نویسی و داده کاوی گذاشته است آدرس سایتش www.fanavard.com

2015-08-06 07:13:32 -0500 امیر شکری

سلام میگم یک سر به سایت www.fanavard.ir بزنید. مسابقات برنامه نویسی شون شروع شده. گواهی رسمی از طرف دانشگاه شریف می ده. 50 تا سکه هم جایزشه

2016-10-26 11:09:33 -0500 امیر شکری

1 پاسخ

4

سلام.

قسمت الف) در مرحله i ام اگر ارتفاع درخت از i بیشتر نباشه کافیه i مرحله عملیات 1 رو انجام بدیم.در غیر این صورت عملیات 2 رو انجام میدیم که حداقل i یال رو پاک میکنه.درکل 100 یال داریم پس با توجه به نامساوی زیر : $$14+13+12+...+1>100$$ یال های درخت تموم میشه!

برای قسمت ب هم با استقرا چنین درختی بسازید: image description

که مسلما ربطی به درخت های قرمز_سیاه نداره!

موفق باشید!

2015-04-24 08:09:14 -0500
روبیک 2379 ● 13 ● 27 ● 44
پاک‌کردن   ویرایش پاسخ
نظرات

میشه ب رو اینجوری هم ساخت که n - 1 تا ارتفاع n تایی و 1 ارتفاع n تایی داشته باشیم ؟‌ خوب بدیهتا به n ‌مرحله برای پاک کردن این درخت نیاز داریم

2015-04-24 08:48:24 -0500 زهرا ح

نه.2 مرحله.اول عملیات 1.بعد یه سری مسیر میشن.عملیات 2.

2015-04-24 09:19:09 -0500 روبیک

ولی مگه نگفته یکی از راس ها پس نمیشه همه مسیر ها رو با هم تو ی مرحله پاک کرد

2015-04-24 10:47:00 -0500 زهرا ح

الان تو این درختی که در قسمت ب رسم کردی ریشه کدومه؟فکر کنم شکلت یه اشتباه کوچولو داره

2015-04-24 12:22:06 -0500 دمرل

هیچی اشتباه بود . ی اشتباه بزرگ داره . مهم نیست جواب بالایی کاملن درسته

2015-04-24 12:28:04 -0500 زهرا ح

پاسخ شما

فقط در صورتی که پاسخی برای این پرسش دارید، آن را اینجا بنویسید و برای بحث کردن از قسمت «ثبت‌ نظر» استفاده کنید. شما می‌توانید قبل از وارد شدن به سایت پاسخ خود را بنویسید. این پاسخ ذخیره می‌شود و زمانی که شما وارد سایت شدید یا ثبت‌نام کردید منتشر می‌شود.

پیش‌نمایش:

کلیه‌ی حقوق این سایت متعلق به کمیته‌ی ملی المپیاد کامپیوتر است.