অক্ষের সাথে সংযুক্ত ইউনিট বর্গক্ষেত্র উপাদানগুলির কেন্দ্রগুলির সাথে পূর্ণসংখ্যার বিরতিতে সারিবদ্ধভাবে বিভক্ত একটি 2D অঞ্চল নিয়ে যান। একটি প্রান্তটি অভ্যন্তরীণ বলে যদি এটি দুটি উপাদান দ্বারা ভাগ করা হয়, অন্যথায় এটি বাহ্যিক প্রান্ত।
আপনার লক্ষ্যটি হ'ল প্রতিবেশী উপাদানগুলির ন্যূনতম সংখ্যার সন্ধান করুন যা প্রতিটি উপাদানটির কেন্দ্র থেকে শুরু করে বাহ্যিক প্রান্তে পৌঁছতে অবশ্যই প্রবেশ করতে হবে, যা হিসাবে পরিচিত traversal distance
বা distance
সংক্ষেপে for আপনি কেবল একটি প্রান্ত দিয়ে যেতে পারেন (অর্থাত্ কোন কোণে কাটা / তির্যক গতিবিধি নয়)। নোট করুন যে "বাহ্যিক উপাদান" (যে উপাদানগুলির অন্তত একটি বাহ্যিক প্রান্ত রয়েছে) 0
বহির্মুখী প্রান্তে পৌঁছানোর জন্য প্রতিবেশী উপাদানগুলি অতিক্রম করতে হবে বলে মনে করা হয় ..
ইনপুট
ইনপুটটি সমস্ত উপাদানগুলির কেন্দ্রের (x, y) নির্দেশ করে এমন অ-নেতিবাচক পূর্ণসংখ্যার জোড় স্থানাঙ্কের একটি তালিকা। ধারণা করা হয় সেখানে কোনও ওভারল্যাপিং উপাদান নেই (অর্থাত্ একটি এক্স / ওয়াই জুটি কোনও উপাদানকে স্বতন্ত্রভাবে সনাক্ত করে)। আপনি উপাদান ইনপুট অর্ডার সম্পর্কে কিছু ধরে নিতে পারেন না ।
ইনপুটটির উত্স যে কোনও স্থানে রূপান্তর করতে আপনাকে স্বাগত জানানো হয়েছে (উদাঃ 0,0 বা 1,1, ইত্যাদি)।
আপনি ধরে নিতে পারেন যে সমস্ত ইনপুট উপাদান সংযুক্ত রয়েছে, বা অন্য কথায় উপরের নিয়মগুলি ব্যবহার করে যে কোনও একটি উপাদান থেকে অন্য কোনও উপাদানে ভ্রমণ করা সম্ভব। মনে রাখবেন যে এর অর্থ এই নয় যে 2 ডি অঞ্চলটি কেবল সংযুক্ত; এটির ভিতরে গর্ত থাকতে পারে।
উদাহরণ: নিম্নলিখিতটি একটি অবৈধ ইনপুট।
0,0
2,0
ত্রুটি পরীক্ষা করার প্রয়োজন হয় না।
ইনপুটটি কোনও উত্স থেকে (ফাইল, স্টডিও, ফাংশন প্যারামিটার ইত্যাদি) হতে পারে from
আউটপুট
আউটপুটটি প্রতিটি উপাদান সনাক্তকারী স্থানাঙ্কের একটি তালিকা হতে হবে এবং প্রান্তে পৌঁছানোর জন্য সংশ্লিষ্ট সংখ্যার দূরত্বকে চিহ্নিত করা উচিত। আউটপুটটি যে কোনও উপাদান ক্রমে পছন্দসই হতে পারে (যেমন আপনাকে ইনপুট হিসাবে প্রাপ্ত একই ক্রমে আউটপুট উপাদানগুলির প্রয়োজন হবে না)।
আউটপুটটি কোনও উত্স হতে পারে (ফাইল, স্টডিও, ফাংশন রিটার্ন মান, ইত্যাদি)
বাহ্যিক দূরত্বের সাথে উপাদানটির স্থানাঙ্কের সাথে মেলে এমন কোনও আউটপুট ঠিক আছে, যেমন এগুলি সবই ঠিক আছে:
x,y: distance
...
[((x,y), distance), ...]
[(x,y,distance), ...]
উদাহরণ
পাঠ্য উদাহরণের ইনপুটগুলি ফর্মটিতে রয়েছে x,y
, প্রতি লাইনে একটি উপাদান রয়েছে; আপনি একটি সুবিধাজনক ইনপুট ফর্ম্যাট এ পুনরায় আকার দিতে স্বাগত জানাই (ইনপুট ফর্ম্যাট নিয়ম দেখুন)।
পাঠ্য উদাহরণের আউটপুটগুলি বিন্যাসে থাকে x,y: distance
, প্রতি লাইনে একটি উপাদান থাকে; আবার, আপনি একটি সুবিধাজনক আউটপুট ফর্ম্যাট (আউটপুট ফর্ম্যাট নিয়ম দেখুন) এ পুনরায় আকার দিতে স্বাগত জানাই।
গ্রাফিকাল পরিসংখ্যানগুলির নিম্ন-বাম দিকে আবদ্ধ (0,0) রয়েছে এবং ভিতরে সংখ্যাগুলি প্রত্যাশিত সর্বনিম্ন দূরত্বকে বহির্মুখী প্রান্তে পৌঁছানোর প্রতিনিধিত্ব করে। মনে রাখবেন যে এই পরিসংখ্যানগুলি কেবল নিরীক্ষণের উদ্দেশ্যে; আপনার প্রোগ্রাম এই আউটপুট প্রয়োজন হয় না।
উদাহরণ 1
ইনপুট:
1,0
3,0
0,1
1,2
1,1
2,1
4,3
3,1
2,2
2,3
3,2
3,3
আউটপুট:
1,0: 0
3,0: 0
0,1: 0
1,2: 0
1,1: 1
2,1: 0
4,3: 0
3,1: 0
2,2: 1
2,3: 0
3,2: 0
3,3: 0
গ্রাফিকাল উপস্থাপনা:
উদাহরণ 2
ইনপুট:
4,0
1,1
3,1
4,1
5,1
6,1
0,2
1,2
2,2
3,2
4,2
5,2
6,2
7,2
1,3
2,3
3,3
4,3
5,3
6,3
7,3
8,3
2,4
3,4
4,4
5,4
6,4
3,5
4,5
5,5
আউটপুট:
4,0: 0
1,1: 0
3,1: 0
4,1: 1
5,1: 0
6,1: 0
0,2: 0
1,2: 1
2,2: 0
3,2: 1
4,2: 2
5,2: 1
6,2: 1
7,2: 0
1,3: 0
2,3: 1
3,3: 2
4,3: 2
5,3: 2
6,3: 1
7,3: 0
8,3: 0
2,4: 0
3,4: 1
4,4: 1
5,4: 1
6,4: 0
3,5: 0
4,5: 0
5,5: 0
গ্রাফিকাল উপস্থাপনা:
উদাহরণ 3
ইনপুট:
4,0
4,1
1,2
3,2
4,2
5,2
6,2
8,2
0,3
1,3
2,3
3,3
4,3
5,3
6,3
7,3
8,3
9,3
1,4
2,4
3,4
4,4
5,4
6,4
7,4
8,4
9,4
2,5
3,5
4,5
5,5
6,5
9,5
10,5
11,5
3,6
4,6
5,6
9,6
10,6
11,6
6,7
7,7
8,7
9,7
10,7
11,7
আউটপুট:
4,0: 0
4,1: 0
1,2: 0
3,2: 0
4,2: 1
5,2: 0
6,2: 0
8,2: 0
0,3: 0
1,3: 1
2,3: 0
3,3: 1
4,3: 2
5,3: 1
6,3: 1
7,3: 0
8,3: 1
9,3: 0
1,4: 0
2,4: 1
3,4: 2
4,4: 2
5,4: 2
6,4: 1
7,4: 0
8,4: 0
9,4: 0
2,5: 0
3,5: 1
4,5: 1
5,5: 1
6,5: 0
9,5: 0
10,5: 0
11,5: 0
3,6: 0
4,6: 0
5,6: 0
9,6: 0
10,6: 1
11,6: 0
6,7: 0
7,7: 0
8,7: 0
9,7: 0
10,7: 0
11,7: 0
গ্রাফিকাল উপস্থাপনা:
স্কোরিং
এটি কোড গল্ফ। বাইটস মধ্যে সংক্ষিপ্ত কোড। স্ট্যান্ডার্ড লুফোলস প্রযোজ্য। এই সমস্যাটি সমাধানের জন্য বিশেষভাবে ডিজাইন করা ব্যতীত অন্য কোনও বিল্ট-ইন অনুমোদিত।