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

C++ में GCD 1 के साथ उप-अनुक्रमों की संख्या गिनें


हमें पूर्णांक तत्वों की एक सरणी दी गई है और कार्य दिए गए सरणी से उप-अनुक्रम ढूंढना है जिसमें GCD 1 है। GCD दो या अधिक का सबसे बड़ा सामान्य भाजक है पूर्णांक जो दी गई संख्याओं को पूरी तरह से विभाजित करते हैं और सभी के बीच सबसे बड़ा।

इनपुट - int arr[] ={3, 4, 8, 16}

आउटपुट − GCD 1 के साथ उप-अनुक्रमों की संख्या है − 7

स्पष्टीकरण -

जीसीडी के साथ 1 के रूप में दिए गए सरणी से बनने वाले उप-अनुक्रम हैं (3, 4), (3, 8), (3, 16), (4, 3), (8, 3), (16, 3), (3, 4, 8)

इनपुट - int arr[] ={5, 7, 10}

आउटपुट − GCD 1 के साथ उप-अनुक्रमों की संख्या − 3

. है

स्पष्टीकरण -

जीसीडी के साथ 1 के रूप में दिए गए सरणी से बनने वाले उप-अनुक्रम हैं (5, 7), (7, 10), (5, 7, 10)

नीचे दिए गए प्रोग्राम में इस्तेमाल किया गया तरीका इस प्रकार है

  • किसी भी आकार के पूर्णांक तत्वों की एक सरणी इनपुट करें।

  • किसी सरणी के आकार की गणना करें और आगे की प्रक्रिया के लिए डेटा को फ़ंक्शन में पास करें

  • GCD के साथ उप-अनुक्रमों की संख्या को 1

    . के रूप में संग्रहीत करने के लिए एक अस्थायी चर गणना घोषित करें
  • एक सरणी के आकार तक i से 0 तक के लिए लूप प्रारंभ करें

  • लूप के अंदर एक और लूप शुरू करें, जब तक कि एक सरणी के आकार तक j से 0 तक न हो

  • लूप के अंदर, IF GCD(arr[i], arr[j]) =TRUE जांचें, फिर गिनती को 1 तक बढ़ाएं

  • वापसी की संख्या

  • परिणाम प्रिंट करें।

उदाहरण

# include <bits/stdc++.h>
using namespace std;
int gcd(int a, int b){
   if (a == 0)
      return b;
   return gcd(b % a, a);
}
int GCD_1(int arr[],int size){
   int count = 0;
   for(int i=0;i<size;i++){
      for(int j=0;j<=size;j++){
         if(gcd(arr[i],arr[j])==1){
            count++;
         }
      }
   }
   return count;
}
int main(){
   int arr[] = {3, 4, 8, 16};
   int size = sizeof(arr)/sizeof(arr[0]);
   cout<<"Count of number of sub-sequences with GCD 1 are: "<<GCD_1(arr, size);
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

Count of number of sub-sequences with GCD 1 are: 7

  1. C++ में संभावित त्रिभुजों की संख्या गिनें

    हमें एक सरणी दी गई है जिसमें त्रिभुजों की भुजाओं की लंबाई होती है। लक्ष्य संभव त्रिभुजों की संख्या ज्ञात करना है जो उस सरणी से किन्हीं तीन भुजाओं को लेकर बनाए जा सकते हैं। तीसरा पक्ष है। यदि हाँ, तो ये तीनों भुजाएँ एक त्रिभुज बना सकती हैं। संभावित त्रिभुजों की वृद्धि संख्या जिन्हें बनाया जा सकता है

  1. C++ में नाइस सबएरे की संख्या गिनें

    मान लीजिए कि हमारे पास पूर्णांक संख्याओं की एक सरणी है और एक पूर्णांक k है। एक सबअरे को अच्छा सबअरे के रूप में जाना जाता है यदि उस पर k विषम संख्याएँ हों। हमें अच्छे उप-सरणियों की संख्या ज्ञात करनी है। तो यदि सरणी [1,1,2,1,1] है, और k =3 है, तो आउटपुट 2 होगा, क्योंकि उप-सरणी [1,1,2,1] और [1,2,1] हैं

  1. C++ में किसी संख्या के सभी पूर्ण भाजक गिनें

    इस ट्यूटोरियल में, हम किसी संख्या के सभी पूर्ण भाजक की संख्या ज्ञात करने के लिए एक प्रोग्राम पर चर्चा करेंगे। इसके लिए हमें एक नंबर दिया जाएगा। हमारा काम उस दी गई संख्या के सभी पूर्ण भाजक को गिनना है। उदाहरण #include<bits/stdc++.h> using namespace std; //checking perfect square bool if_psquar