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

C++ में किसी तत्व के धनात्मक और ऋणात्मक मानों वाले सभी युग्मों को प्रिंट करें


इस समस्या में, हमें अद्वितीय पूर्णांकों की एक सरणी दी गई है। और हमें पूर्णांकों के सभी जोड़े (सकारात्मक और ऋणात्मक पूर्णांक) वापस करने होंगे जो सरणी में मौजूद हैं।

आइए समस्या को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं -

Input: array = {1 , 4 , 7 , -1, 2, 5, -7}
Output: -11 -33

समस्या को हल करने का एक आसान तरीका दो छोरों का उपयोग करना और सकारात्मक-नकारात्मक जोड़े ढूंढना है। लेकिन यह समाधान जटिल होगा और इसमें क्रम n2 की समय जटिलता होगी जहां n सरणी का आकार है।

लेकिन, हमें समस्या को हल करने के लिए एक अधिक कुशल दृष्टिकोण खोजना होगा। उसके लिए, हम पहले ऐरे को सॉर्ट करेंगे। और फिर इस क्रमबद्ध सरणी में, प्रत्येक नकारात्मक पूर्णांक के लिए विपरीत (सकारात्मक) पूर्णांक खोजें। यह द्विआधारी खोज एक अच्छा तरीका होगा। और जो जोड़े खोज का उपयोग करके पाए जाते हैं उन्हें प्रिंट करें।

उदाहरण

आइए इस विधि का एक कोड उदाहरण देखें -

#include <bits/stdc++.h>
using namespace std;
void positiveNegativePair(int arr[], int n) ;
int main(){
   int arr[] = { 1, 4, 6 , 3, -1, -2, 5, -6, -5 , 8 };
   int n = 10;
   cout<<"Postive Negative pairs in the array are :\n";
   positiveNegativePair(arr, n);
   return 0;
}
void positiveNegativePair(int arr[], int n){
   bool pair_exists = false;
   sort(arr, arr + n);
   for (int i = 0; i < n; i++) {
      if (arr[i] < 0) {
         if (binary_search(arr, arr + n, -arr[i])) {
            cout<<arr[i]<<", "<<-arr[i]<<"\t";
            pair_exists = true;
         }
      }
      else
         break;
   }
   if (!pair_exists)
      cout << "No positive-negative pairs exist in the code";
}

आउटपुट

सरणी में धनात्मक ऋणात्मक युग्म हैं -

-6, 6 -5, 5 -1, 1

  1. सभी चक्रों को C++ में एक अप्रत्यक्ष ग्राफ में प्रिंट करें

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

  1. C++ में इनपुट स्ट्रिंग में सभी डुप्लीकेट प्रिंट करें

    इस समस्या में, हमें एक स्ट्रिंग दी जाती है और हमें उन सभी वर्णों को खोजना होता है जो स्ट्रिंग में उनकी संख्या के साथ-साथ दोहराए गए हैं। आइए समस्या को समझने के लिए एक उदाहरण लेते हैं - Input: TutorialsPoint Output: t (3) o (2) i (2) स्पष्टीकरण - प्रत्येक वर्ण के घटित होने की आवृत्तियाँ t → 3 हैं; य

  1. C++ में विषम और सम संख्या वाले सभी स्तरों को प्रिंट करें

    इस समस्या में हमें एक पेड़ दिया जाता है। और हमें सभी स्तरों को सम संख्या में नोड्स और विषम संख्या में नोड्स के साथ प्रिंट करना होगा। आइए अवधारणा को बेहतर ढंग से समझने के लिए एक उदाहरण लेते हैं आउटपुट - Levels with odd number of nodes: 1, 3, 4 Levels with even number of nodes: 2 स्पष्टीकरण - पह