current date=2025-05-13 14:20:17 start-date=
پازل هشت
در این مساله از شما خواسته میشود تا الگوریتمی برای حل پازل-۸ بنویسید. ورودی این مساله یک حالت از پازل ۸ میباشد و الگوریتم بایستی حرکات مورد نیاز برای حل مساله به ترکیب مورد نظر از اعداد را در خروجی چاپ کند.
در هر مرحله چهار حرکت ممکن وجود دارد که عبارتند از بالا، پایین، چپ و راست (UP, DOWN, LEFT, RIGHT) که منجر به حرکت فضای خالی جدول و جابجایی آن با یکی از خانهها با توجه به حرکت مورد نظر میشود. به عنوان مثال فرض کنید حالتی از پازل به صورت زیر باشد:
در این حالت همه چهار حرکت قابل انجام است مثلا با انجام حرکت (UP) جدول به صورت زیر در خواهد آمد.
الگوریتم بایستی حرکات مورد نیاز برای رسیدن به جدول هدف که به صورت زیر است را محاسبه و در خروجی نمایش دهد و در صورتی که پاسخی برای مساله وجود نداشت پیام ERROR را نماش دهد.
ورودی جدول به صورت سطری داده میشود. فضای خالی با عدد صفر نشان داده میشود.
ورودی نمونه
1 2 3
4 5 6
7 0 8
خروجی نمونه
RIGHT
ورودی نمونه
4 1 3
7 2 0
8 6 5
خروجی نمونه
DOWN
LEFT
LEFT
UP
UP
RIGHT
DOWN
RIGHT
DOWN
برای ارایه را حل لطفا
وارد شوید.