কম্পিউটার টিউটোরিয়াল

সি++ কোড: ম্যানহ্যাটন দূরত্বের শর্ত পূরণকারী পয়েন্ট বের করুন

দুটি পয়েন্ট a=(x1,y1) এবং b=(x2,y2) দেওয়া আছে। ম্যানহ্যাটন দূরত্ব: dist(a,b) = |x1-x2| + |y1-y2|। পয়েন্ট a=(0,0), b=(x,y) হলে, এমন একটি পয়েন্ট c খুঁজে বের করতে হবে যাতে dist(a,c) = dist(a,b)/2 এবং dist(b,c) = dist(a,b)/2। অসম্ভব হলে -1 -1 প্রিন্ট করুন।

উদাহরণ

x = 13, y = 7 → আউটপুট: 6, 4

সমাধানের ধাপসমূহ

if x%2==0 and y%2==0:
    print(x/2, y/2)
else if (x+y)%2==1:
    print(-1, -1)
else:
    print(x/2, (y+1)/2)

সি++ কোড উদাহরণ

#include <bits/stdc++.h>
using namespace std;

void solve(int x, int y) {
    if (x%2==0 && y%2==0)
        cout << x/2 << ' ' << y/2 << endl;
    else if ((x+y)%2==1)
        cout << -1 << ' ' << -1 << endl;
    else
        cout << x/2 << ' ' << (y+1)/2 << endl;
}

int main() {
    int x = 13, y = 7;
    solve(x, y);
    return 0;
}

ইনপুট

13, 7

আউটপুট

6 4
  1. সি++ প্রোগ্রাম: দেওয়া শর্ত পূরণকারী a এবং b সংখ্যা খুঁজে বের করা

  2. সি++ প্রোগ্রাম: সংখ্যা বিভাজ্য করে এমন অঙ্কগুলোর গণনা (Count of Digits Dividing the Number)

  3. C++ ব্যবহার করে ম্যানহ্যাটন দূরত্বের যোগফল ন্যূনতম হয় এমন পয়েন্ট বের করা

  4. C++ প্রোগ্রাম: দোয়া পয়েন্ট কভার করে সেরা ফিট রেক্ট্যাঙ্গল খুঁজে বের করা