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

सभी सरणी तत्वों को असाइन करने के लिए न्यूनतम मान ज्ञात करें ताकि सरणी उत्पाद C++ में बड़ा हो जाए

मान लीजिए कि हमारे पास n तत्वों की एक सरणी है। दिए गए सरणी के सभी तत्वों को कुछ न्यूनतम मान x में अपडेट करें, जैसे कि arr[i] =x। ऐसा कि नई सरणी में सभी तत्वों का उत्पाद प्रारंभिक सरणी के सभी तत्वों के उत्पाद से सख्ती से अधिक है, जहां i <=arr[i] <=10^10, और 1 <=n <=10^5। तो अगर सरणी [4, 2, 1, 10, 6] की तरह है। तो 4 सबसे छोटा तत्व है। 4 * 4 * 4 * 4 * 4> 4 * 2 * 1 * 10 * 6

जैसा कि हम जानते हैं कि n तत्वों का गुणनफल P है। यदि हमें P का nवां मूल ज्ञात करना है, तो उत्पाद का nवां मूल ज्ञात करना है, हम केवल n को सरणी के n तत्वों के लॉग के योग से और फिर एंटीलॉग की छत से विभाजित करते हैं। परिणाम होगा।

रेस =छत (एंटीलॉग (लॉग (एक्स) / 10))

या रेस =छत(10 ^ (लॉग(x) / 10))

उदाहरण

#include <iostream>
#include <cmath>
#define EPS 1e-15
using namespace std;
long long findMinValue(long long arr[], long long n) {
   long double sum = 0;
   for (int i=0; i<n; i++)
   sum += (long double)log10(arr[i])+EPS;
   long double xl = (long double)(sum/n+EPS);
   long double res = pow((long double)10.0, (long double)xl) + EPS;
   return (long long)ceil(res+EPS);
}
int main() {
   long long arr[] = {4, 2, 1, 10, 6};
   long long n = sizeof(arr)/sizeof(arr[0]);
   cout << "Min value is: "<< findMinValue(arr, n);
}

आउटपुट

Min value is: 4

  1. एक सरणी तत्व खोजें जैसे कि सभी तत्व इसके द्वारा c++ . का उपयोग करके विभाज्य हैं

    विचार करें कि हमारे पास कुछ तत्वों के साथ एक सरणी ए है। हमें A से एक अवयव इस प्रकार ज्ञात करना है कि सभी तत्वों को इससे विभाजित किया जा सके। मान लीजिए कि ए [15, 21, 69, 33, 3, 72, 81] जैसा है, तो तत्व 3 होगा, क्योंकि सभी संख्याएं 3 से विभाज्य हो सकती हैं। इस समस्या को हल करने के लिए, हम ए में सबसे

  1. एक सरणी में सभी जोड़े (ए, बी) खोजें जैसे कि सी ++ में% बी =के

    मान लीजिए कि हमारे पास एक सरणी ए है, उस सरणी से, हमें सभी जोड़े (ए, बी) प्राप्त करना है जैसे कि ए% बी =के। मान लीजिए कि सरणी A =[2, 3, 4, 5, 7] और k =3 है, तो जोड़े (7, 4), (3, 4), (3, 5), (3, 7) हैं। इसे हल करने के लिए, हम सूची को देखेंगे और जांचेंगे कि दी गई शर्त संतोषजनक है या नहीं। उदाहरण #inc

  1. सी ++ में सरणी के सभी तत्वों को समान बनाने के लिए न्यूनतम डिलीट ऑपरेशंस।

    समस्या कथन n तत्वों की एक सरणी को देखते हुए जैसे कि तत्व दोहरा सकते हैं। हम सरणी से किसी भी संख्या में तत्वों को हटा सकते हैं। कार्य इसे समान बनाने के लिए सरणी से हटाए जाने वाले तत्वों की न्यूनतम संख्या को खोजना है। arr[] = {10, 8, 10, 7, 10, -1, -4, 12} सभी सरणी तत्वों को समान बनाने के लिए हमें ह