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

C++ में d खोजें ताकि c[i] = d*a[i] + b[i] के रूप में बनी सरणी c[] में शून्य की संख्या अधिकतम हो


अवधारणा

दो दी गई M पूर्णांकों की सरणियों के संबंध में, मान लें एक सरणी C, जहां i-वां पूर्णांक d*a[i] + b[i] होगा जहां d कोई मनमाना वास्तविक संख्या है। हमारा कार्य d को प्रदर्शित या प्रिंट करना है ताकि सरणी C में शून्य की सबसे बड़ी संख्या हो और शून्य की संख्या भी प्रिंट करें।

इनपुट

a[] = {15, 40, 45} b[] = {4, 5, 6}

आउटपुट

Value of d is: -0.133333 The number of zeros in array C is: 1 If we choose d as -0.133333 then we get one zero in the array C which is the maximum possible.

विधियां

हम उपरोक्त समस्या को हल करने के लिए नीचे बताए गए चरणों का पालन करते हैं −

<उल क्लास="सूची"><ली>हम समीकरण को d = -b[i]/a[i] के रूप में लिखते हैं<ली>किसी भी वास्तविक संख्या की सबसे बड़ी घटना की गिनती करने के लिए हैश-टेबल लागू करें ताकि d का मान प्राप्त हो सके।<ली>अब, हम निष्कर्ष निकालते हैं कि शून्य की संख्या सबसे बड़ी गिनती + (a[i] और b[i] के जोड़े की संख्या जहां दोनों 0 हैं) होगी।

उदाहरण

<प्रि क्लास="प्रिटीप्रिंट नोट्रांसलेट">// C++ program to implement the above // approach #include <bits/stdc++.h> using namespace std; // d का मान खोजने वाला फ़ंक्शन // और सरणी में शून्य की संख्या खोजें void findDandZeros1(int a[], int b[], int m){    // हैश टेबल दिखाता है    unordered_map<long double, int> mpp1;    int count1 = 0;    // i-वें तत्व के लिए पुनरावृति करता है    for (int i = 0; i < m; i++) {       // अब यदि दोनों 0 नहीं हैं       if (b[i] != 0 && a[i] != 0) {          long double val1 = (long double)(-1.0 * b[i]) /          (long double)(a[i]);          mpp1[val1] += 1;       }       // अब यदि दोनों 0 हैं       else if (b[i] == 0 && a[i] == 0)          count1 += 1;       }       // अधिकतम बार होने वाले d को खोजने के लिए उपयोग किया जाता है       int maxi1 = 0;       for (auto it : mpp1) {          maxi1 = max(it.second, maxi1);    }    // अधिकतम बार होने वाले d को प्रिंट करने के लिए उपयोग किया जाता है    for (auto it : mpp1) {       if (it.second == maxi1) {          cout << "Value of d is: "          << it.first << endl;          break;       }    }    // शून्य की संख्या प्रिंट करने के लिए उपयोग किया जाता है    cout << "The number of zeros in array C is: "    << maxi1 + count1; } // ड्राइवर कोड int main(){    int a[] = { 15, 40, 45 };    int b[] = { 4, 5, 6 };    int m = sizeof(a) / sizeof(a[0]);    findDandZeros1(a, b, m);    return 0; }

आउटपुट

Value of d is: -0.133333 The number of zeros in array C is: 1

  1. C++ का उपयोग करके पेंटागोनल पिरामिडल संख्या ज्ञात करना C++ का उपयोग करके पेंटागोनल पिरामिडल संख्या ज्ञात करना

    एक पेंटागोनल पिरामिडल संख्या पेंटागोनल बेस पिरामिड में वस्तुओं की संख्या के बराबर होती है। नीचे कुछ पेंटागोनल संख्याएं देखें। N तक पेंटागोनल संख्याओं का योग Nवीं पेंटागोनल पिरामिडल संख्या के बराबर होता है। इस लेख में, हम Nवीं पेंटागोनल पिरामिडल संख्या खोजने पर चर्चा करेंगे, उदाहरण के लिए: इनपुट:

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

    इस लेख में, आप एक दी गई स्ट्रिंग में बनने वाले सबस्ट्रिंग्स (गैर-खाली) की संख्या निकालने के दृष्टिकोण के बारे में जानेंगे।इनपुट: string = moon आउटपुट: 10 व्याख्या: सबस्ट्रिंग्स हैं m, o, o, n, mo, oo, on, moo, oon और moon। इनपुट: string = yellow आउटपुट: 21समाधान खोजने का दृष्टिकोणमान लें स्ट्रिंग की

  1. C++ का उपयोग करके स्टॉपिंग स्टेशनों की संख्या ज्ञात करें C++ का उपयोग करके स्टॉपिंग स्टेशनों की संख्या ज्ञात करें

    बिंदु X और Y के बीच n संख्या में इंटरमीडिएट ट्रेन स्टेशन हैं। उन विभिन्न तरीकों की गणना करें जिनसे ट्रेनों को s स्टेशनों पर रुकने के लिए व्यवस्थित किया जा सकता है जैसे कि कोई दो स्टेशन एक-दूसरे के बगल में न हों। तो इस लेख में, हम स्टॉपिंग स्टेशनों की संख्या ज्ञात करने के लिए हर संभव दृष्टिकोण की व्य