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

ऐरे में गैर-दोहराए गए (अलग) तत्वों का योग खोजें C++ में

मान लीजिए हमारे पास कुछ तत्वों के साथ एक ऐरे A है। हमें ऐरे में सभी अलग-अलग तत्वों का योग खोजना है। तो यदि A = [5, 12, 63, 5, 33, 47, 12, 63], तो अलग-अलग तत्वों का योग 160 है। डुप्लीकेट तत्वों को एक बार मानने के बाद बस अनदेखा कर दिया जाता है।

हम इस समस्या को कुशलता से हल करने के लिए अनऑर्डर्ड सेट का उपयोग कर सकते हैं। हम एक सिंगल फॉर लूप चलाएंगे और जो मान पहली बार आता है, उसे योग वेरिएबल में जोड़ें और हैश टेबल में स्टोर करें ताकि अगली बार हम इस मान का उपयोग न करें।

उदाहरण

#include <iostream>
#include <unordered_set>
using namespace std;

int getNonRepeatSum(int arr[], int n) {
    int sum = 0;
    unordered_set<int> u_set;
    for (int i = 0; i < n; i++) {
        if (u_set.find(arr[i]) == u_set.end()) {
            sum += arr[i];
            u_set.insert(arr[i]);
        }
    }
    return sum;
}

int main() {
    int arr[] = {5, 12, 63, 5, 33, 47, 12, 63};
    int n = sizeof(arr) / sizeof(int);
    cout << "Sum is: " << getNonRepeatSum(arr, n);
}

आउटपुट

Sum is: 160

  1. - C++ प्रोग्राम: क्रमबद्ध सरणी में दिए गए मान के k निकटतम तत्व ज्ञात करना

    मान लें हमारे पास कुछ तत्वों के साथ एक सरणी A है। हमारे पास दो अन्य मान X और k हैं। हमारा कार्य सरणी A से X के k निकटतम तत्वों की संख्या ज्ञात करना है। यदि तत्व X सरणी में मौजूद है, तो यह आउटपुट में नहीं दिखाया जाएगा। यदि A = [12, 16, 22, 30, 35, 39, 42, 45, 48, 50, 53, 55, 56] और X = 35, k = 4 है।

  1. - C++ में सरणी के सभी विशिष्ट सबसेट (या सबसीक्वेंस) योग ढूंढना

    मान लीजिए हमारे पास पूर्णांकों का एक सेट है। विशिष्ट योग ढूंढें जो दिए गए सेट के सबसेट से बनाए जा सकते हैं और उन्हें आरोही क्रम में प्रिंट करें। सरणी तत्वों का योग छोटा है। उदाहरण: सरणी [1, 2, 3] के लिए आउटपुट 0, 1, 2, 3, 4, 5, 6 होगा। विशिष्ट सबसेट हैं {}, {1}, {2}, {3}, {1, 2}, {2, 3}, {1, 3}, {1,

  1. - C++ में दो सरणियों के योग को बराबर करने वाली जोड़ी ढूंढें

    समस्या विवरण दो सरणियां दी गई हैं जिनमें अलग-अलग संख्या में तत्व हैं। हमें एक जोड़ी (x, y) ढूंढनी है जहां x पहली सरणी में है और y दूसरी सरणी में है। इस जोड़ी को स्वैप करने के बाद दोनों सरणियों का योग बराबर होना चाहिए। उदाहरण: सरणी A = [4, 1, 2, 2, 1, 1] (योग = 11) और सरणी B = [3, 3, 6, 3] (योग = 1