الگوریتمستان

برنامه‌نویسی، طراحی الگوریتم و حل مسئله‌های الگوریتمی

 
در صورت ناخوانا بودن نوشته‌ها، از مرورگر دیگری استفاده کنید.
نوشته‌ها با برچسب الگوریتم فلوید-وارشال نوشته‌ها با برچسب الگوریتم فلوید-وارشال - الگوریتمستان الگوریتمستان الگوریتمستان
نوشته‌ها با برچسب «

الگوریتم فلوید-وارشال

»

الگوریتم فلوید-وارشال (Floyd-Warshall) یک الگوریتم مبتنی بر روش برنامه‌نویسی پویا برای محاسبه‌ی کوتاهترین مسیر بین هر دو جفت گره گراف‌های وزن‌دار است. دو الگوریتم رایج دایکسترا و بلمن-فورد روش‌های محاسبه‌ی کوتاهترین مسیر از مبدأ ثابت هستند که در صورت تکرار آنها به ازای هر گره عملکردی همانند الگوریتم فلوید-وارشال دارند. اما این الگوریتم ویژگی‌هایی دارد که آن را برجسته می‌کند:

ادامه ...

مسئله

ساختمان جدید دپارتمان مهندسی کامپیوتر تنها شامل آسانسور بوده و پله ندارد. برای دسترسی سریع و مناسب به اتاق‌ها و کلاس‌های طبقات مختلف، آسانسورها به گونه‌ای تنظیم شده‌اند که تنها در طبقات مشخصی توقف داشته باشند؛ مثلا تعدادی تنها در طبقات زوج و تعدادی دیگر تنها در طبقات فرد. دکمه‌های داخل آسانسور و کنار ورودی آسانسور نیز تنها برای همین طبقات از پیش مشخص شده فعال هستند. این ایده دسترسی سریع و مناسب به طبقات ساختمان را برای برخی افراد فراهم می‌کند. به عنوان نمونه اعضای هیئت علمی دسترسی مستقیم به طبقات اتاق‌های خود دارند. اما در حالت کلی باعث سردرگمی می‌شود. اگر شخصی بخواهد از طبقه‌ای به طبقه‌ی دیگری برود، ممکن است هیچ آسانسوری در هر دوی آنها توقف نداشته باشد و شخص مجبور به تعویض آسانسور گردد. در چنین شرایطی این سوال پیش می‌آید که کدام آسانسور (یا آسانسورها) باید انتخاب شوند و کدام انتخاب‌ها شخص را در زمان کمتری به مقصد می‌رساند. اگر مسیر حرکت شخص از طبقه‌ی i به طبقه‌ی j به صورت $ i = f_1 \rightarrow f_2 \rightarrow f_3 \rightarrow \cdots \rightarrow f_k = j $ نمایش داده شود، عبارت $ \sum_{r=1}^{k-1} \vert f_i - f_{i+1} \vert $ زمان لازم برای رسیدن به مقصد از طریق آن مسیر است. برنامه‌ای بنویسید که افراد را در استفاده‌ی بهتر (در زمان کمتر) از آسانسورها یاری کند.

ادامه ...

الگوریتمستان در تلگرام

   

 

پیوند کوتاه:
برچسب‌ها
#نمونه سوالات مسابقه برنامه‌نویسی #صف #درخت پوشا #پیمایش گراف #ترجمه‌ی فارسی سوالات برنامه‌نویسی #برنامه‌نویسی #تمرین طراحی الگوریتم #مسابقه برنامه‌نویسی #نکات برنامه‌نویسی #آموزش طراحی الگوریتم #تمرین مسابقه‌ی برنامه‌نویسی ای‌سی‌ام #آمادگی مسابقه ACM #الگوریتم‌های برنامه‌نویسی پویا #مسئله‌های الگوریتمی #نمونه سوال فارسی مسابقات ACM #نمونه سوال فارسی مسابقات برنامه‌نویسی #دانلود کتاب #الگوریتم‌های بازگشتی #ویدئوی آموزشی #ساختمان داده #کتاب الکترونیکی #الگوریتم‌های گراف #الگوریتم دایکسترا #مسابقات برنامه‌نویسی #حل سوالات ACM-ICPC #کتاب الگوریتم #جستجوی اول عمق #مسئله‌ی کوله‌پشتی #کتاب مسابقات برنامه‌نویسی #آمادگی مسابقه برنامه‌نویسی #مسابقات برنامه‌نویسی ACM #ترجمه فارسی سوالات کتاب Programming Challenges #ترجمه‌ی فارسی سوالات ACM #وبلاگ #الگوریتم #سوالات برنامه‌نویسی #مسابقه برنامه نویسی #الگوریتم‌های حریصانه #مسأله‌های الگوریتمی #سوالات مسابقات ACM-ICPC #Python #نمونه سوال مسابقه ACM #الگوریتم‌های کوتاهترین مسیر #الگوریتم‌های تقسیم و غلبه #تمرین مسابقه برنامه‌نویسی #جستجوی اول سطح #آمادگی المپیاد کامپیوتر #حل مسئله‌‌ی الگوریتمی #حل سوالات UVa Online Judge #الگوریتم فلوید-وارشال #تکنیک‌های طراحی الگوریتم #منبع آموزشی #حل سوالات Timus Online Judge #ترجمه‌ی فارسی سوالات UVa Online Judge #مسأله‌های برنامه‌نویسی #برنامه‌نویسی ++C #ماتریس #سوالات چالشی برنامه‌نویسی #کتابخانه قالب استاندارد ++C #آموزش ساختمان داده‌ها #تمرین المپیاد کامپیوتر #الگوریتم‌های مرتب‌سازی #معرفی وب‌سایت #آموزش الگوریتم #درخت‌ها #الگوریتم‌های مسیریابی #الگوریتم‌های عقبگرد #محاسبات ریاضی #حل سوالات مسابقات برنامه‌نویسی #نمونه سوال فارسی مسابقه‌ی ACM #سوالات UVa Online Judge #مسئله‌های برنامه‌نویسی #آموزش برنامه‌نویسی ++C #گراف #سوالات مسابقات برنامه‌نویسی بیان