شبکهي مرتبسازي یک مدل انتزاعی ریاضی شامل شبکهاي از سیمها و واحدهاي مقایسهکننده است که براي
هدف از این تمرین این است که عملکرد یک شبکه را روي یک دنبالهي ورودي شبیهسازي کنیم. در ورودي، شبکه و
دنبالهي اعداد داده میشوند. خروجی برنامه تعیین میکند که آیا شبکهي داده شده اعداد را بهدرستی مرتب میکند یا
نه. توضیح اینکه لزوماً هر شبکه، به طور صحیح اعداد را مرتب نمیکند. مثال هایی از حالتهاي درست و نادرست در
نمونههاي زیر ذکر میشوند. علاوه بر این، ممکن است در توصیف شبکهي ورودي خطاهایی وجود داشته باشد که
برنامهي شما باید آنها را تشخیص دهد. براي توصیف یک شبکهي ورودي، از ماتریسی از کاراکترها استفاده میکنیم. به
عنوان مثال شبکهي نشان داده شده در شکل فوق توسط ماتریس زیر توصیف میشود.
هر سطر از ماتریس یک سیم را مشخص میکند. هر کاراکتر از یک سطر یا '-' است که نشان دهندهي عدم وجود
مقایسهکننده درآن بخش است یا با یک حرف لاتین مشخص میشود که در این صورت، باید در یکی (و تنها یکی) دیگر
از کاراکتر هاي آن ستون، کاراکتر مشابه اي پیدا شود. به این ترتیب، فرض میشود یک واحد مقایسهکننده بین سیمهاي
متناظر آن دو سطر وجود دارد. به عنوان مثال، در توصیف فوق یک مقایسهکننده بین دو سیم اول و سوم وجود دارد که
مشخص شده. ستون دوم نیز وجود یک مقایسهکننده بین سیم هاي دوم و چهارم است. ترتیب انتقال اعداد از a با حرف
چپ به راست فرض میشود. در توصیف داده شده از شبکه ممکن است خطاهایی به شرح زیر وجود داشته باشد که
برنامهي شما باید آنها را تشخیصدهد:
در یک ستون تنها یک مورد از یک حرف پیدا میشود یا این که بیش از دو مورد از آنحرف وجود دارد. ·
در توصیف شبکه، کاراکتري غیر از حروف کوچک لاتین و ‘-‘ وجود دارد. ·
دقت کنید که دو مقایسهکننده در دو ستون مختلف میتوانند با یک حرف یکسان نمایش داده شوند، چون این امر
ابهامی در عملکرد شبکه ایجاد نمیکند.
ورودي
است که به ترتیب تعداد سطرها و تعداد K و خط دوم حاوي عدد صحیح N خط اول هر مورد آزمون حاوي عدد صحیح
کاراکتر تشکیل K خط پشت سر هم می آیند که هر یک از N ، ستون هاي ماتریس شبکه را مشخص میکنند. بعد از آن
N عدد صحیح که به ترتیب روي سیمهاي 1 تا N ، شدهاند و محتواي کاراکترهاي ماتریس را مشخص میکنند. سپس
قرار خواهند گرفت وارد می شوند. در ورودي مسئله ممکن است تعداد بیش از یک مورد آزمون ذکر شود که هر یک از
با عدد صفر مقدار دهی شوند، برنامه خاتمه می پذیرد. K و N قالب فوق پیروي میکنند. درصورتی که متغیرهاي
خروجی
آمده، یکی از سه « نمونه خروجی » براي هر مورد آزمون، یک خط در خروجی بنویسید که با قالبی مانند آنچه در بخش
به این معنی که اعداد ورودي پس از پردازش توسط شبکه مرتب Not Sorted ؛ نتیجهي ممکن را مشخص کند
به Invalid network به این معنی که اعداد ورودي پس از پردازش توسط شبکه مرتب میشوند و Sorted . نمیشوند
این معنی که ورودي داده شده قوانین مطرح شده در توصیف مسئله را نقض میکند.
- - , .
برچسب:
نویسنده: محمد رضا جوادیان