سؤال

وفقا للمواصفات ،

كتل الألوان السوداء وحواف البرنامج تقيد البرنامج. إذا حاول مترجم PIET الانتقال إلى كتلة سوداء أو إيقاف حافة ، يتم إيقافه ويتم تبديل CC. ثم يحاول المترجم الانتقال من كتلةه الحالية مرة أخرى. إذا فشلت مرة ثانية ، يتم نقل DP خطوة في اتجاه عقارب الساعة. تتكرر هذه المحاولات ، مع تغيير CC و DP بين المحاولات البديلة. إذا لم يتمكن المترجم المترجم بعد ثماني من مغادرة كتلة الألوان الحالية ، فلا توجد وسيلة للخروج وينتهي البرنامج.

ما لم أقرأها بشكل غير صحيح ، فإن هذا يتعارض مع سلوك تسلسل فيبوناتشي هنا: http://www.dangermouse.net/esoteric/piet/fibbig1.gif (من: http://www.dangermouse.net/esoteric/piet/samples.html)

على وجه التحديد ، لماذا يتحول موانئ دبي إلى اليسار عند (0،3) ((0،0) يجري (أعلى ، يسار)) عندما يضرب الحافة اليسرى؟ في هذه المرحلة ، يتم ترك كل من DP و CC ، لذلك ، من خلال قراءتي ، يجب أن يكون التسلسل:

  1. حاول (وفشل) مغادرة الكتلة عن طريق الخروج من الحافة على (0،4) ،
  2. تبديل CC إلى اليمين ،
  3. حاول (وفشل) مغادرة الكتلة عن طريق الخروج من الحافة عند (0،2).
  4. تدوير موانئ دبي إلى أعلى ،
  5. حاول (وتنجح) مغادرة الكتلة في (1،2) عن طريق إدخال الكتلة البيضاء في (1،1)

يبدو أن السلوك المشار إليه في التتبع هو أن DP يتم تدويره على طول الطريق ، تاركًا CC على اليسار.

ما الذي أساء فهمه؟

هل كانت مفيدة؟

المحلول

يبدو تحليلك صحيحًا ؛ العينة عربات التي تجرها الدواب. يجب أن تكون الكتلة البيضاء في (1،1) سوداء. يمكنك التحقق من ذلك عن طريق الاستيلاء على صورة العينة وتنفيذها.

لاحظ أن ثلاثة على الأقل من المترجمين الفوريين مرتبط من صفحة DMM هي عربات التي تجرها الدواب - تم وضع علامة على مارك ماجشر على هذا النحو ، ويتم تجول Sylvain Tintillier وإخراجها بشكل صحيح ولكنه يحول معنى In and Inn من المواصفات (هذه هو نسخة خالية من الأخطاء) ، و Pietdev يعبر بشكل غير صحيح كتل الألوان.

تحرير: ربما تحتاج الكتل البيضاء الأخرى أيضًا إلى أن تكون سوداء ، مثل الكتلة في (6،3).

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top