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

C++ ব্যবহার করে এনক্রিপ্টেড অ্যারে থেকে আসল অ্যারে বের করা

ধরি আমাদের একটি পূর্ণসংখ্যার অ্যারে আছে যা এনক্রিপ্টেড অ্যারে। ধরি অ্যারেটি A = [10, 14, 12, 13, 11], আসল অ্যারে B = [5, 1, 3, 2, 4], আমরা দেখতে পাচ্ছি A-এর প্রতিটি এলিমেন্ট সূচক I-তে এই নিয়ম মেনে চলে: A[i] = B[j]-এর সব এলিমেন্টের যোগফল যেখানে i ≠ j। আমাদের কাজ হল এনক্রিপ্টেড অ্যারে থেকে আসল অ্যারে বের করা।

এটি গাণিতিক পর্যবেক্ষণের ওপর ভিত্তি করে। ধরি অ্যারের আকার ৪, আসল অ্যারে B = [a, b, c, d], তাহলে A হবে A[b+c+d, a+c+d, a+b+d, a+b+c]। B-এর সব এলিমেন্ট যোগ করলে পাব sum = 3*(a+b+c+d)। সুতরাং B-এর এলিমেন্টগুলোর যোগফল = sum/3। এখন B-এর এলিমেন্টগুলো হবে [sum - A[0], sum - A[1], sum - A[2], sum - A[3]]।

উদাহরণ কোড

#include <iostream>
using namespace std;

void showOrigianlArray(int arr[], int n) {
    int sum = 0;
    for (int i = 0; i < n; i++)
        sum += arr[i];
    sum = sum / (n - 1);
    for (int i = 0; i < n; i++)
        cout << (sum - arr[i]) << " ";
}

int main() {
    int arr[] = {10, 14, 12, 13, 11};
    int n = sizeof(arr) / sizeof(arr[0]);
    showOrigianlArray(arr, n);
}

আউটপুট

5 1 3 2 4
  1. সি++ প্রোগ্রাম: ক্রমাগত উপাদানদের XOR দিয়ে অ্যারে উপাদানগুলো খুঁজে বের করা

  2. C++ ব্যবহার করে অ্যারেতে সমস্ত ভিন্ন সাবসেট (সাবসিকোয়েন্স) যোগফল খুঁজে বের করা

  3. C++ ব্যবহার করে এনক্রিপ্টেড অ্যারে থেকে আসল অ্যারে বের করা

  4. C++-এ পয়েন্টার অর্থমেটিক ব্যবহার করে অ্যারে সমষ্টি বের করা