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

C++ . में N चुम्बकों से बनने वाले चुम्बकों के समूहों की संख्या

अंक 1 सकारात्मक ध्रुव का प्रतिनिधित्व करते हैं जबकि 0 नकारात्मक ध्रुव का प्रतिनिधित्व करता है।

चुंबक के दोनों ध्रुव 10 . होंगे या 01. एक दूसरे को आकर्षित करने वाले चुम्बकों से एक समूह बनाया जा सकता है। अलग-अलग ध्रुवों वाले चुम्बक एक दूसरे के सामने एक ही समूह में होंगे।

यहाँ, आपको N संख्या के चुम्बक दिए गए हैं। आपको यह पता लगाना होगा कि उनके साथ कितने समूह बनाए जा सकते हैं।

जब भी दो अलग-अलग चुम्बक साथ-साथ होते हैं, तो एक नया समूह बनता है। उस स्थिति में समूहों की संख्या बढ़ाएँ।

आइए एक उदाहरण देखें।

इनपुट

magnets = ["10", "01", "01", "01", "10", "01"]

आउटपुट

4

दिए गए सरणी में 4 चुम्बक एक दूसरे को एक दूसरे की ओर आकर्षित करते हैं। वे "10", "01", "10", "01" हैं।

एल्गोरिदम

  • चुंबक के साथ सरणी प्रारंभ करें।
  • गिनती को 1 से प्रारंभ करें क्योंकि हम जोड़े ले रहे हैं।
  • एक ऐसा लूप लिखें जो 1 अनुक्रमणिका से सरणी के अंत तक पुनरावृत्त हो।
  • यदि वर्तमान चुम्बक पिछले चुम्बक के बराबर नहीं है, तो गिनती बढ़ाएँ।
  • गिनती लौटाएं।

कार्यान्वयन

C++ में उपरोक्त एल्गोरिथम का कार्यान्वयन निम्नलिखित है

#include <bits/stdc++.h>
using namespace std;
int getMangetGroupsCount(string magnets[], int n) {
   int count = 1;
   for (int i = 1; i < n; i++) {
      if (magnets[i] != magnets[i - 1]) {
         count++;
      }
   }
   return count;
}
int main() {
   string magnets[] = { "10", "01", "01", "01", "10", "01" };
   int n = 6;
   cout << getMangetGroupsCount(magnets, n) << endl;
   return 0;
}

आउटपुट

यदि आप उपरोक्त कोड चलाते हैं, तो आपको निम्न परिणाम प्राप्त होंगे।

4

  1. C++ में मितव्ययी संख्या

    इस समस्या में, हमें एक धनात्मक पूर्णांक N दिया जाता है। हमारा कार्य यह जाँचने के लिए एक प्रोग्राम बनाना है कि दी गई संख्या मितव्ययी संख्या है या नहीं। मितव्ययी संख्या - एक संख्या जिसके अंकों की संख्या दी गई संख्या के अभाज्य गुणनखंड में अंकों की संख्या से अधिक है। उदाहरण − 625, संख्या 625 का अभाज्

  1. C++ का प्रयोग करते हुए तीन रेखाओं पर बिंदुओं के समूह से बने त्रिभुजों की संख्या ज्ञात कीजिए

    हमें अब 3 पंक्तियों में मौजूद कई बिंदु दिए गए हैं; हमें यह पता लगाना है कि ये बिंदु कितने त्रिभुज बना सकते हैं, उदाहरण के लिए Input: m = 3, n = 4, k = 5 Output: 205 Input: m = 2, n = 2, k = 1 Output: 10 हम इस प्रश्न के लिए कुछ संयोजन लागू करेंगे और इस समस्या को हल करने के लिए कुछ सूत्र तैयार करेंग

  1. सी++ पेंटाटोप नंबर

    पास्कल के त्रिभुज में एक पंचकोण संख्या को पाँचवीं संख्या के रूप में वर्णित किया गया है। अब, जैसा कि आप जानते हैं, यह पांचवीं संख्या है, तो इसका मतलब है कि हमारे पास पास्कल के त्रिकोण में कम से कम पांच संख्याएं होनी चाहिए, इसलिए इस श्रृंखला की पहली संख्या 1 4 6 4 1 से शुरू होती है। पास्कल त्रिभुज की