ম্যানহাটন দূরত্ব একটি নিয়মিত গ্রিড উপর লম্ব পদক্ষেপ পরস্পর থেকে এক সেল পৌঁছানোর গ্রহণ করা প্রয়োজন সংখ্যা। অर्थোগোনাল স্টেপগুলি হ'ল গ্রিড কোষগুলির প্রান্তগুলি দিয়ে যাওয়া (কোণগুলির বিপরীতে যা আমাদের চেবিশেভ দূরত্ব দেয় )।
আমরা অন্যান্য গ্রিডগুলিতে অনুরূপ দূরত্ব নির্ধারণ করতে পারি, উদাহরণস্বরূপ ত্রিভুজাকার গ্রিড। আমরা গ্রিডের পৃথক কক্ষগুলিকে নিম্নলিখিত সূচীকরণ স্কিমের সাথে সম্বোধন করতে পারি, যেখানে প্রতিটি ঘরে একটি x,y
জুড়ি থাকে:
____________________________________...
/\ /\ /\ /\ /\
/ \ 1,0/ \ 3,0/ \ 5,0/ \ 7,0/ \
/ 0,0\ / 2,0\ / 4,0\ / 6,0\ / 8,0\
/______\/______\/______\/______\/______\...
\ /\ /\ /\ /\ /
\ 0,1/ \ 2,1/ \ 4,1/ \ 6,1/ \ 8,1/
\ / 1,1\ / 3,1\ / 5,1\ / 7,1\ /
\/______\/______\/______\/______\/___...
/\ /\ /\ /\ /\
/ \ 1,2/ \ 3,2/ \ 5,2/ \ 7,2/ \
/ 0,2\ / 2,2\ / 4,2\ / 6,2\ / 8,2\
/______\/______\/______\/______\/______\...
\ /\ /\ /\ /\ /
\ 0,3/ \ 2,3/ \ 4,3/ \ 6,3/ \ 8,3/
\ / 1,3\ / 3,3\ / 5,3\ / 7,3\ /
\/______\/______\/______\/______\/___...
/\ /\ /\ /\ /\
. . . . . . . . . .
. . . . . . . . . .
এখন এই গ্রিডের ম্যানহাটনের দূরত্ব আবার এক কক্ষ থেকে অন্য ঘরে যাওয়ার জন্য প্রান্তগুলির সর্বনিম্ন সংখ্যা number আপনার কাছ থেকে স্থানান্তর করতে পারেন 3,1
থেকে 2,1
, 4,1
বা 3,2
, কিন্তু অন্য কোন ত্রিভুজ না যেহেতু ঐ বরং প্রান্ত চেয়ে পয়েন্ট পার করা হবে।
উদাহরণস্বরূপ, থেকে দূরত্ব 2,1
থেকে 5,2
হয় 4
। সংক্ষিপ্ততম পথটি সাধারণত অনন্য নয়, তবে 4 টি ধাপে দূরত্ব তৈরির একটি উপায় হ'ল:
2,1 --> 3,1 --> 3,2 --> 4,2 --> 5,2
চ্যালেঞ্জ
দুটি সমন্বয়যুক্ত জোড়া এবং উপরোক্ত ঠিকানা স্কিম থেকে, তাদের মধ্যে ম্যানহাটনের দূরত্ব ফিরিয়ে দিন।x1,y1
x2,y2
আপনি ধরে নিতে পারেন যে এই চারটি ইনপুটগুলি অ-নেতিবাচক পূর্ণসংখ্যা, যার প্রতিটি 128 এরও কম। ।)।
আপনি কোনও প্রোগ্রাম বা একটি ফাংশন লিখতে পারেন এবং ইনপুট গ্রহণ এবং আউটপুট সরবরাহের মানক পদ্ধতির কোনও ব্যবহার করতে পারেন ।
আপনি যে কোনও প্রোগ্রামিং ভাষা ব্যবহার করতে পারেন , তবে লক্ষ্য করুন যে এই ফাঁকগুলি ডিফল্টরূপে নিষিদ্ধ করা হয়েছে।
এটি কোড-গল্ফ , তাই সংক্ষিপ্ততম বৈধ উত্তর - বাইটগুলিতে মাপা - জয় w
পরীক্ষার মামলা
প্রতিটি পরীক্ষার কেস হিসাবে দেওয়া হয় ।x1,y1 x2,y2 => result
1,2 1,2 => 0
0,1 1,1 => 1
1,0 1,1 => 3
2,1 5,2 => 4
0,0 0,127 => 253
0,0 127,0 => 127
0,0 127,127 => 254
0,127 127,0 => 254
0,127 127,127 => 127
127,0 127,127 => 255
75,7 69,2 => 11
47,58 36,79 => 42
77,9 111,23 => 48
123,100 111,60 => 80
120,23 55,41 => 83
28,20 91,68 => 111
85,107 69,46 => 123
16,25 100,100 => 159
62,85 22,5 => 160
92,26 59,113 => 174
62,22 35,125 => 206
(a,b,x,y)->c(a,b,x,y,0)
( c
চারটি আর্গুমেন্টের সাথে পৃথক পদ্ধতি কল করা এবং 0
পঞ্চম যুক্তি হিসাবে)।