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

सी++ में सरणी मानों की त्रिकोणीय व्यवस्था की अधिकतम ऊंचाई

समस्या कथन

एक सरणी को देखते हुए, हमें त्रिभुज की अधिकतम ऊंचाई खोजने की आवश्यकता है जिसे हम सरणी मानों से बना सकते हैं जैसे कि प्रत्येक (i+1) th स्तर में पिछले स्तर से बड़ी राशि वाले अधिक तत्व होते हैं।

उदाहरण

यदि इनपुट ऐरे {40, 100, 20, 30} है तो उत्तर 2 के रूप में है -

हमारे पास नीचे के स्तर पर 100 और 20 और पिरामिड के ऊपरी स्तर पर 40 या 30 हो सकते हैं

एल्गोरिदम

हमारा समाधान केवल इस तर्क पर आधारित है कि यदि हमारे पास अपने पिरामिड के लिए अधिकतम ऊंचाई h संभव है तो (h * (h + 1)) / 2 तत्व सरणी में मौजूद होने चाहिए

उदाहरण

#include <bits/stdc++.h>
using namespace std;
int getMaximumHeight(int *arr, int n) {
   int result = 1;
   for (int i = 1; i <= n; ++i) {
      long long y = (i * (i + 1)) / 2;
      if (y < n) {
         result = i;
      } else {
         break;
      }
   }
   return result;
}
int main() {
   int arr[] = {40, 100, 20, 30};
   int n = sizeof(arr) / sizeof(arr[0]);
   cout << "Result = " << getMaximumHeight(arr, n) << endl;
   return 0;
}

आउटपुट

जब आप उपरोक्त प्रोग्राम को संकलित और निष्पादित करते हैं। यह निम्नलिखित आउटपुट उत्पन्न करता है -

Result = 2

  1. सी ++ में एक सरणी में अधिकतम बिटवाइज़ और एक जोड़ी का मूल्य

    समस्या कथन n सकारात्मक तत्वों की एक सरणी को देखते हुए। हमें सरणी से किसी भी तत्व के जोड़े द्वारा उत्पन्न अधिकतम बिटवाइज़ और मान खोजने की आवश्यकता है। उदाहरण यदि इनपुट ऐरे {10, 12, 15, 18} है तो बिटवाइज़ का अधिकतम मान और 12 है। एल्गोरिदम बिटवाइज़ और सिंगल बिट पर संचालन का परिणाम अधिकतम होता है जब

  1. सी ++ में एक सरणी को उलट दें

    लेख C++ कोडिंग का उपयोग करते हुए अवरोही क्रम में उलटे जाने के लिए एक सरणी को प्रदर्शित करता है जिसमें उच्चतम सूचकांक को लूप में सरणी को पार करके निम्नतम सूचकांक में बदल दिया जाता है। उदाहरण #include <iostream> #include <algorithm> using namespace std; void reverseArray(int arr[], int n){

  1. सी++ में एक सरणी में अधिकतम जीसीडी के साथ जोड़ी खोजें

    मान लीजिए कि हमारे पास सकारात्मक पूर्णांकों की एक सरणी है। हमारा काम सरणी से पूर्णांकों की जोड़ी को खोजना है, जहां GCD मान अधिकतम है। मान लीजिए A ={1, 2, 3, 4, 5}, तो आउटपुट 2 है। जोड़ी (2, 4) में GCD 2 है, अन्य GCD मान 2 से कम हैं। इस समस्या को हल करने के लिए, हम प्रत्येक तत्व के भाजक की गिनती को