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

C++ में दिए गए पथ से न्यूनतम स्टॉप की संख्या


समस्या कथन

  • द्वि-आयामी स्थान में कई बिंदु हैं जिन्हें एक विशिष्ट क्रम में देखा जाना है।
  • एक बिंदु से दूसरे बिंदु तक का पथ हमेशा सबसे छोटे पथ के रूप में चुना जाता है और पथ खंड हमेशा ग्रिड लाइनों के साथ संरेखित होते हैं।
  • हमें वह पथ दिया गया है जिसे बिंदुओं को देखने के लिए चुना गया है। हमें उन न्यूनतम बिंदुओं की संख्या बतानी होगी जो दिए गए पथ उत्पन्न करने के लिए आवश्यक हैं।

एल्गोरिदम

1. हम स्टॉप पर जाने पर गति के पैटर्न को देखकर इस समस्या को हल कर सकते हैं 2. यदि हम एक बिंदु से दूसरे बिंदु तक सबसे छोटा पथ लेना चाहते हैं, तो हम या तो एक या अधिकतम दो दिशाओं में आगे बढ़ेंगे

उदाहरण

#include <bits/stdc++.h> using namespace std; int getMinStops(string path) {    int n = path.length();    map<char, int> directionMap;    int stops = 1;    for (int i = 0; i < n; ++i) {       char direction = path[i];       directionMap[direction] = 1;       if ((directionMap['L'] && directionMap['R']) ||       (directionMap['U'] && directionMap['D'])) {          directionMap.clear();          ++stops;          directionMap[direction] = 1;       }    }    return stops + 1; } int main() {    string path = "LLUUULLDD";    cout << "न्यूनतम स्टॉप = " << getMinStops(path) << endl;    return 0; }

जब आप उपरोक्त प्रोग्राम को संकलित और निष्पादित करते हैं। यह निम्नलिखित आउटपुट उत्पन्न करता है

आउटपुट

न्यूनतम स्टॉप = 3

  1. - C++ कोड: खेल में n से शुरू होने वाली न्यूनतम संख्या खोजें

    मान लीजिए हमारे पास एक संख्या n है। एक खेल में प्रारंभ में n का मान v है और खिलाड़ी निम्नलिखित ऑपरेशन शून्य या अधिक बार कर सकता है: एक धनात्मक पूर्णांक x चुनें जो x < n हो और x, n का भाजक न हो, फिर x को n से घटाएं। खिलाड़ी का लक्ष्य अंत में n के मान को न्यूनतम करना है।उदाहरण के लिए, यदि इनपुट n = 8

  1. - C++ में दिए गए आधार में पैंडिजिटल संख्या

    एक संख्या जिसमें 0 से आधार B तक के सभी अंक होते हैं, उसे उस आधार में पैंडिजिटल संख्या कहा जाता है। हालांकि, कुछ संख्याओं में 1 से 9 तक के अंक होते हैं और उन्हें ज़ीरोलेस पैंडिजिटल संख्या कहा जाता है। पैंडिजिटल संख्याओं के कुछ उदाहरण 0123456789, 0789564312, आदि हैं।इस ट्यूटोरियल में, हम एक समस्या पर

  1. C++ का उपयोग करके दिए गए बिंदुओं से संभावित चतुर्भुजों की संख्या ज्ञात करें C++ का उपयोग करके दिए गए बिंदुओं से संभावित चतुर्भुजों की संख्या ज्ञात करें

    यूक्लिडियन प्लेन ज्यामिति में एक चतुर्भुज चार शीर्षों और चार किनारों के साथ एक बहुभुज बनाता है। नाम 4-gon आदि। चतुर्भुजों के अन्य नामों में शामिल हैं और कभी-कभी उन्हें वर्ग, डिस्प्ले स्टाइल आदि के रूप में भी जाना जाता है।इस लेख में, हम दिए गए बिंदुओं से संभावित चतुर्भुजों की संख्या ज्ञात करने के दृष