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

প্রথম N প্রাকৃতিক সংখ্যার Good Permutation বের করা (C++)


সমস্যা বিবরণ

একটি পূর্ণসংখ্যা N দেওয়া আছে। আমাদের কাজ হল প্রথম N প্রাকৃতিক সংখ্যার Good Permutation বের করা।

Good Permutation: পি₁ = i এবং p_{p_i} = i সিদ্ধ করে এমন পারমিউটেশন।

উদাহরণ

ইনপুট: N = 1
আউটপুট: -1 (সম্ভব নয়)

সমাধানের পদ্ধতি

N বিজোড় হলে সম্ভব নয়। N জোড় হলে (2,1), (4,3), (6,5)... এই জোড়া গুলো বানানো।

প্রোগ্রাম উদাহরণ

#include <iostream>
using namespace std;

void printGoodPermutation(int n) {
    if(n%2!=0) { cout << -1; return; }
    for(int i=1;i<=n/2;i++)
        cout << 2*i << " " << 2*i-1 << " ";
}

int main() {
    printGoodPermutation(4); // 2 1 4 3
    return 0;
}

আউটপুট

2 1 4 3
  1. যে প্রাকৃতিক সংখ্যার ফ্যাক্টোরিয়াল x দিয়ে বিভাজ্য, সেটি খুঁজে বের করা C++-তে

  2. C++-এ 2N সংখ্যার পারমুটেশন যাতে দিয়ে দিয়া এক্সপ্রেশনের ফলাফল ঠিক 2K হয়

  3. প্রথম nটি প্রাকৃতিক সংখ্যার যোগফলের যোগফল নির্ণয় করা C++-এ

  4. C++ প্রোগ্রাম: অ্যারে উপাদানগুলোর গুণফলের প্রথম ডিজিট বের করা