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

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

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

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

»

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