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

C++ का प्रयोग करते हुए N चालों के बाद त्रिभुजों की संख्या ज्ञात कीजिए

लेख में, सबसे पहले, हमें एक रंगीन त्रिभुज बनाना है। हमें एक बिना रंग का त्रिभुज लेना है और त्रिभुज को चार छोटे समबाहुओं में विभाजित करना है। समान क्षेत्रफल वाले त्रिभुज और इसे nवें चरण तक करते रहें और आकृति में मौजूद समबाहु त्रिभुजों की संख्या ज्ञात करें।

समाधान खोजने के लिए दृष्टिकोण

इस समाधान के लिए दो दृष्टिकोण हैं और वे हैं -

क्रूर फ़ोर्स अप्रोच

हम देख सकते हैं कि त्रिभुजों की संख्या प्रत्येक चरण के बाद किसी न किसी संख्या (3*पिछली_संख्या + 2 की वृद्धि) से बढ़ती रहती है। इसलिए हम n तक एक लूप चला सकते हैं और त्रिभुजों की संख्या की गणना कर सकते हैं।

उदाहरण

#include <iostream>
using namespace std;
int main() {
   int n = 2; // number of operations we made
   int count = 1; // at first we have only one triangle
   for(int i = 0; i < n; i++) { // looping till n
      count = 3 * count + 2; // as the triangle count is increasing by 3*prev + 2
   }
   cout <<count << "\n";
}

आउटपुट

17

उपरोक्त कार्यक्रम की समय जटिलता ओ (एन) है, जहां एन प्रदर्शन किए गए कार्यों की संख्या है। अब हम इसकी समय जटिलता में और सुधार कर सकते हैं जो उच्च बाधाओं से निपटने में बहुत मददगार होगी।

कुशल दृष्टिकोण

इस दृष्टिकोण में, हम एक सूत्र बनाएंगे जो हमारे लिए हमारे उत्तर की गणना करेगा।

उदाहरण

#include <bits/stdc++.h>
using namespace std;
int main() {
   int n = 2; // number of operations we made
   int count;
   count = 2 * (pow(3, n)) - 1; // the total number of triangles after nth move
   cout << count << "\n";
}

आउटपुट

17

उपरोक्त कोड में O(log(N)) की समय जटिलता है, जहां N हमारे द्वारा किए गए चालों की संख्या है।

उपरोक्त कोड की व्याख्या

दिए गए कार्यक्रम में, हम बस अपनी दी गई प्रक्रिया को हल करने के लिए एक सूत्र बना रहे हैं और सूत्र में आवश्यक मान डाल रहे हैं, और परिणाम प्रिंट कर रहे हैं।

निष्कर्ष

यह लेख कुछ प्रेक्षणों और कुछ गणित को लागू करके N चाल के बाद त्रिभुजों की संख्या ज्ञात करता है। हमने इस समस्या के लिए C++ प्रोग्राम और संपूर्ण दृष्टिकोण (सामान्य और कुशल) भी सीखा जिसके द्वारा हमने इस समस्या को हल किया।

हम उसी प्रोग्राम को अन्य भाषाओं जैसे सी, जावा, पायथन और अन्य भाषाओं में लिख सकते हैं। हमें उम्मीद है कि आपको यह लेख मददगार लगा होगा।


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

    इस लेख में, आप किसी दिए गए स्ट्रिंग में बनाए जा सकने वाले सबस्ट्रिंग (गैर-रिक्त) की संख्या को खोजने के तरीकों के बारे में जानेंगे। Input : string = “moon” Output : 10 Explanation: Substrings are ‘m’, ‘o’, ‘o’, ‘n’, ‘mo’, &lsqu

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

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

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

    इस लेख में, हम एक सेट पर रिफ्लेक्सिव संबंधों की संख्या को खोजने के तरीकों की व्याख्या करेंगे। इस समस्या में, हमें संख्या n दी गई है, और n प्राकृत संख्याओं के समुच्चय पर, हमें प्रतिवर्ती संबंधों की संख्या निर्धारित करनी होगी। चिंतनशील संबंध − समुच्चय A में एक संबंध प्रतिवर्ती कहलाता है यदि (a, a) R