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

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

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

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

»

الگوریتم فلوید-وارشال (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 $ زمان لازم برای رسیدن به مقصد از طریق آن مسیر است. برنامه‌ای بنویسید که افراد را در استفاده‌ی بهتر (در زمان کمتر) از آسانسورها یاری کند.

ادامه ...

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

   

 

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