Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

सरणी को इस प्रकार कनवर्ट करें कि सरणी का GCD C++ में 1 हो जाए

इस ट्यूटोरियल में, हम एरे को कन्वर्ट करने के लिए एक प्रोग्राम पर चर्चा करेंगे ताकि एरे का जीसीडी एक हो जाए।

इसके लिए हमें एक सरणी और एक धनात्मक पूर्णांक k दिया जाएगा। हमारा कार्य सरणी तत्वों को इस तरह परिवर्तित करना है कि तत्वों का GCD 1 है, जबकि केवल सरणी तत्वों को k से विभाजित करना है जब तक कि तत्व k से कम न हो।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
//calculating the GCD of array
int calculate_gcd(int* arr, int n){
   int gcd = arr[0];
   for (int i = 1; i < n; i++)
      gcd = __gcd(arr[i], gcd);
   return gcd;
}
//checking if the operation is possible
bool convertGcd(int* arr, int n, int k){
   int gcd = calculate_gcd(arr, n);
   int max_prime = 1;
   for (int i = 2; i <= sqrt(gcd); i++) {
      while (gcd % i == 0) {
         gcd /= i;
         max_prime = max(max_prime, i);
      }
   }
   max_prime = max(max_prime, gcd);
   return (max_prime <= k);
}
int main(){
   int arr[] = { 10, 15, 30 };
   int k = 6;
   int n = sizeof(arr) / sizeof(arr[0]);
   if (convertGcd(arr, n, k) == true)
   cout << "Yes";
   else
      cout << "No";
   return 0;
}

आउटपुट

Yes

  1. जोड़ा जाने वाला न्यूनतम मान ज्ञात करें ताकि सरणी C++ में संतुलित हो जाए

    मान लीजिए कि हमारे पास n तत्वों के साथ एक सरणी A है। और n सम है। हमें उस मान को खोजना होगा जो सरणी को संतुलित करने के लिए आवश्यक है। चूंकि सरणी का आकार सम है, तो हम दो भाग बना सकते हैं। बाएँ आधे का योग और दाएँ आधे का योग संतुलित होना चाहिए। तो अगर सरणी ए =[1, 2, 3, 2, 5, 3] की तरह है तो बाएं आधे का

  1. सरणी के तत्वों को क्रमबद्ध करें जो C++ में K के गुणकों के बीच होता है

    मान लीजिए कि हमारे पास एक सरणी A है, और एक अन्य पूर्णांक K है। हमें उन तत्वों को क्रमबद्ध करना है जो K के किन्हीं दो गुणकों के बीच हैं। मान लीजिए कि A [2, 13, 3, 1, 21, 7, 8, 13, 12 जैसा है। ], और K =2. आउटपुट [2, 1, 3, 7, 13, 21, 8, 13, 12] होगा। यहां 2 का गुणज 2, 8 और 12 है, 2 और 8 के बीच के तत्व

  1. किसी सरणी में न्यूनतम संख्या जोड़ें ताकि योग C++ में भी हो जाए?

    मान लीजिए कि कुछ संख्याओं के साथ एक सरणी है। हमें कम से कम यह बताना होगा कि तत्वों के योग को सम बनाने के लिए इसमें कितनी संख्याएँ जोड़ी जाएँगी। संख्या 0 से अधिक होनी चाहिए। इसलिए यदि तत्वों का योग विषम है, तो हम 1 जोड़ देंगे, लेकिन यदि योग पहले से ही सम है, तो हम इसे सम बनाने के लिए इसमें 2 जोड़ दें