টেট্রিস-টাইলস 4x4 বুলিয়ান ম্যাট্রিক্স হিসাবে সঞ্চয় করা হয়। প্রতিটি ঘোরানো পদক্ষেপের নিজস্ব ম্যাট্রিক্স থাকে, টি- ব্লকের উপস্থাপনাটি এর মতো দেখায়:
[
0, 0, 0, 0,
0, 1, 1, 1,
0, 0, 1, 0,
0, 0, 0, 0
],
[
0, 0, 1, 0,
0, 0, 1, 1,
0, 0, 1, 0,
0, 0, 0, 0
],
[
0, 0, 1, 0,
0, 1, 1, 1,
0, 0, 0, 0,
0, 0, 0, 0
],
[
0, 0, 1, 0,
0, 1, 1, 0,
0, 0, 1, 0,
0, 0, 0, 0
]
আমি যখন ব্লকটি ঘোরানো হয় এবং বোর্ডের সাথে সংঘর্ষ হয় তখন এটির অবস্থান নির্ণয়ের কোনও উপায় অনুসন্ধান করার চেষ্টা করছি (বোর্ডটিও একটি ম্যাট্রিক্স)। মূল টেট্রিস কোনও ব্লকের আবর্তনের অনুমতি দেয় না যখন ঘোরার ফলে সংঘর্ষ হয়। গেমের আধুনিক রূপগুলি সংঘর্ষের সমাধান করবে এবং ব্লকটিকে একটি বৈধ অবস্থানে নিয়ে যাবে।
এখানে কিছু পরিস্থিতি সমাধান করা উচিত। বোর্ডটি 6x6, লাল = অ্যাক্টিভ ব্লক, ধূসর = স্থানযুক্ত / দখলকৃত ব্লক। প্রতিবার, একটি ঘড়ির কাঁটার বিপরীতে ঘূর্ণন সঞ্চালন করা উচিত। সবুজ ওভারলে ব্লকের ম্যাট্রিক্স নির্দেশ করে। তীরটি ঘূর্ণনটি সমাধানের জন্য ফলাফল সংশোধন করার ইঙ্গিত দেয়:
- বোর্ডের বাম দিকে ব্লক। যেহেতু ব্লকটি বোর্ডটি ছাড়তে পারে না, তাই এটি ঘোরানোর পরে আবার ভিতরে shouldুকে যেতে হবে।
- ব্লক "গ্রাউন্ড" হিট, তবে এখনও স্থাপন / প্রতিশ্রুতিবদ্ধ নয়। এই ক্ষেত্রে, টাইলটি সংঘর্ষের সমাধানের জন্য উপরে উঠতে হবে ("I" -ব্লক ক্ষেত্রে, চলাচলটি 2 কোষ আপ হবে)।
- টাইল দখলকৃত ব্লকে আঘাত করবে, সংঘর্ষের সমাধান করতে অবশ্যই বাম দিকে সরানো হবে।
- টাইল ঘোরানো যায় না।
এই সমস্যাটি মোকাবেলার জন্য সেরা পন্থাটি কী হবে? সর্বোত্তমভাবে, সমাধানটি জেনেরিক হওয়া উচিত, যেমন। নির্বিচারে আকারের এবং জনবহুল বোর্ডে স্বেচ্ছাসেবী 4x4 ম্যাট্রিক্স ব্লক নিয়ে কাজ করুন।