ধরুন আমাদের একটি স্থানাঙ্ক (x, y) আছে। একটি 2D গ্রিডে, একটি রোবট (0, 0) অবস্থানে রয়েছে এবং পৌঁছাতে চায় (x, y)। এটি উপরে, নীচে, বাম বা ডানে যেতে পারে বা বর্তমান ঘরে থাকতে পারে। এটি সম্ভাব্য কমান্ডের সাথে সর্বনিম্ন গন্তব্যে পৌঁছাতে চায়। আমাদের প্রয়োজনীয় পদক্ষেপের সংখ্যা গণনা করতে হবে।
সুতরাং, ইনপুট যদি x =3 এর মত হয়; y =4, তাহলে আউটপুট হবে 7
পদক্ষেপ
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
return x + y + minimum of |x - y|, |x - y + 1|, and |x - y - 1|
উদাহরণ
আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -
#include <bits/stdc++.h> using namespace std; int solve(int x, int y) { return x + y + min(abs(x - y), min(abs(x - y + 1), abs(x - y - 1))); } int main() { int x = 3; int y = 4; cout << solve(x, y) << endl; }
ইনপুট
3, 4
আউটপুট
7