الدومينو

الدومينو

متوسط

مقدمة

في Toyland، القطارات مشغولة دائمًا بنقل الكنوز عبر المدينة، من الكرات الزجاجية اللامعة إلى مكعبات البناء النادرة. السكك التي تسير عليها مصنوعة من قطع ملونة على شكل الدومينو، تحمل كل قطعة منها رقمين. ولتتحرك القطارات، يجب أن تشكّل قطع الدومينو تسلسلًا متكاملًا تتطابق فيه الأرقام.

اليوم، توصيلٌ عاجل لشحنة من الألعاب النادرة في الانتظار. وقد أُعطيتَ مجموعة من قطع السكة لفحصها. إذا استطاعت أن تشكّل تسلسلًا متصلًا، انطلق القطار ناشرًا البسمة في أرجاء Toyland. وإن لم تستطع، ستُستبعد المجموعة وتُجرَّب أخرى.

الألعاب تعتمد عليك لحل هذا اللغز. فهل ستربط قطع الدومينو السكك وتُطلق القطار في مسيره، أم ستُترك المجموعة خلفها؟

التعليمات

كوّن سلسلة من قطع الدومينو.

احسب أسلوبًا لترتيب مجموعة معطاة من أحجار الدومينو بحيث تكوّن سلسلة دومينو صحيحة. في السلسلة، يجب أن تتطابق النقاط على أحد نصفَي الحجر مع النقاط على النصف المجاور من حجر مجاور. بالإضافة إلى ذلك، يجب أن تتطابق النقاط على نصفي الحجرين بلا جيران (الحجر الأول والحجر الأخير) مع بعضها.

على سبيل المثال، عند وجود الأحجار [2|1] و[2|3] و[1|3] ينبغي أن تحسب ترتيبًا مثل [1|2] [2|3] [3|1] أو [3|2] [2|1] [1|3] أو [1|3] [3|2] [2|1] وهكذا، حيث يكون الرقمان الأول والأخير متماثلين.

بالنسبة للأحجار [1|2] و[4|1] و[2|3] فإن السلسلة الناتجة غير صحيحة: الرقمان الأول والأخير في [4|1] [1|2] [2|3] ليسا متماثلين. 4 != 3

قد تستخدم بعض حالات الاختبار أحجارًا مكررة في حل السلسلة. افترض أنه يجري استخدام عدة مجموعات دومينو.

تعديل عبر GitHub يفتح الرابط في نافذة أو علامة تبويب جديدة
Standard ML Exercism

مستعد لبدء الدومينو؟

سجّل في Exercism لتتعلّم وتتقن Standard ML عبر 90 تمرينًا، وإرشاد بشري حقيقي، وكل ذلك مجانًا.