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

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

समस्या कथन

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

एल्गोरिदम

1. We can solve this problem by observing the pattern of movement when visiting the stop
2. If we want to take the shortest path from one point to another point, then we will move in either one or max two directions

उदाहरण

#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 << "Minimum stops = " << getMinStops(path) << endl;
   return 0;
}

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

आउटपुट

Minimum stops = 3

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

    मान लीजिए कि हमारे पास एक संख्या n है। एक खेल में शुरू में n का मान v होता है और खिलाड़ी निम्नलिखित ऑपरेशन को शून्य या अधिक बार करने में सक्षम होता है:एक सकारात्मक पूर्णांक x का चयन करें जो x

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

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

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

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