এটি সমস্ত কৌশলকে অ্যারে হিসাবে এনকোড করার একটি কৌশল - প্রতিটি জুড়ি di[i],dj[i]
একটি আলাদা দিক।
যদি আমরা কল্পনা করি যে কোনও স্থান x, y এ আমাদের একটি টুকরা রয়েছে এবং আমরা এটির কাছাকাছি অবস্থানে স্থানান্তর করতে এর x এবং এর y মানটি যোগ করতে চাই, 1,0 পূর্ব, -1,0 পশ্চিমে, 0,1 দক্ষিণে, 0, -1 উত্তর এবং আরও
(এখানে আমি বলেছি উপরের বামটি 0,0 এবং নীচের ডানটি 4,4 এবং অ্যারেগুলির প্রতিটি সূচকটি কেন্দ্রীয় পয়েন্ট, এক্স, ২,২ থেকে কী করবে তা দেখিয়েছে))
.....
.536.
.1X0.
.724.
.....
এটি যেভাবে সেট আপ করা হয়েছে, যদি আপনি সূচকে ^1
( ^
বিটওয়াইজ এক্সওআর হয়ে) থাকেন তবে আপনি বিপরীত দিকটি পান - 0 এবং 1 টি বিপরীত, 2 এবং 3 বিপরীত এবং এই জাতীয়। (এটি সেট আপ করার আরেকটি উপায় হ'ল উত্তর থেকে শুরু করে ঘড়ির কাঁটার দিকে এগিয়ে যাওয়া - তারপরে ^4
আপনাকে বিপরীত দিকে দিকে নিয়ে যায়))
এখন আপনি একটি নির্দিষ্ট বিন্দু থেকে আপনার di
এবং dj
অ্যারেগুলি লুপ করে সমস্ত দিকনির্দেশ পরীক্ষা করতে পারেন , পরিবর্তে প্রতিটি দিকটি তার নিজের লাইনে লিখতে হবে (মোট আটজনের জন্য!) (সীমা পরীক্ষা করতে ভুলবেন না :))
diK
এবং djK
সকল ফর্ম নাইটদের দিকনির্দেশ সব সংলগ্ন দিকনির্দেশ পরিবর্তে। এখানে, ^1
একটি অক্ষ বরাবর উল্টানো ^4
হবে, বিপরীত নাইট লিপ দিতে হবে।
.7.6.
0...5
..K..
1...4
.2.3.
d={0,1,0,-1,0}
জন্য ব্যবহার করি : আইটেম জোড়াগুলিd[i], d[i+1]
আমাকে চারটি মূল নির্দেশিকা দেয়।