এই সমস্যাতে, একটি অ্যারে দেওয়া আছে। আমাদের কাজ হলো চেক করা অ্যারের সব উপাদানের ডিজিট ব্যবহার করে একটি সংখ্যা বানানো যা ৩ দিয়ে বিভাজ্য। যদি সম্ভব হয় তবে "Yes" প্রিন্ট করা অন্যথায় "No"।
উদাহরণ:
ইনপুট - arr = {3, 5, 91}
আউটপুট - YES
ব্যাখ্যা - সংখ্যা 5193, ৩ দিয়ে বিভাজ্য। তাই উত্তর YES।
সমাধানের জন্য, আমরা ৩ দিয়ে বিভাজ্যতা চেক করব।
৩ দিয়ে বিভাজ্যতা - একটি সংখ্যা ৩ দিয়ে বিভাজ্য হয় যদি এর ডিজিটগুলোর যোগফল ৩ দিয়ে বিভাজ্য হয়।
এখন, আমাদের সব অ্যারে এলিমেন্টের যোগফল বের করতে হবে। যদি এই যোগফল ৩ দিয়ে বিভাজ্য হয়, তবে সম্ভব এবং YES প্রিন্ট করব, অন্যথায় No।
উদাহরণ
সমাধানের প্রোগ্রাম:
#include <iostream>
using namespace std;
bool is3DivisibleArray(int arr[]) {
int n = sizeof(arr) / sizeof(arr[0]);
int rem = 0;
for (int i = 0; i < n; i++)
rem = (rem + arr[i]) % 3;
return (rem == 0);
}
int main() {
int arr[] = { 23, 64, 87, 12, 9 };
cout << "Creating a number from digits of array which is divisible by 3 ";
is3DivisibleArray(arr) ? cout << "is Possible" : cout << "is not Possible";
return 0;
} আউটপুট
Creating a number from digits of array which is divisible by 3 is Possible