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

C++ में दिए गए मूवमेंट के बाद रोबोट की स्थिति


इस समस्या में, हमें एक रोबोट दिया गया है जो चारों दिशाओं में चलता है लेकिन केवल एक चाल। दिशाएं हैं ऊपर('U'), नीचे('D'), बाएं('L'), दाएं('R')। और हमें एक स्ट्रिंग दी गई है जिसमें दिशाओं के प्रारंभिक अक्षर हैं। हमारा कार्य रोबोट की अंतिम स्थिति प्रिंट करना है, दिया गया है कि रोबोट की प्रारंभिक स्थिति (0,0) है।

समस्या को समझने के लिए एक उदाहरण लेते हैं

इनपुट - इनपुट: 'LDRRUL'

आउटपुट - (0, 0)

व्याख्या -

L (बाएं) : (0,0) -> (-1,0)
D (नीचे) : (-1,0) -> (-1, -1)
R (दाएं) : (-1, -1) -> (0, -1)
R (दाएं) : (0, -1) -> (1, -1)
U(ऊपर) : (1, -1) -> (1, 0)
L(बाएं) : (1, 0) -> (0, 0)

इस समस्या को हल करने के लिए, हम x-अक्ष और y-अक्ष दिशा में कुल चालों की गिनती करेंगे। x-निर्देशांक के लिए, दाएं चाल के लिए गिनती बढ़ाएं और बाएं चाल के लिए घटाएं। y-निर्देशांक के लिए, ऊपर चाल के लिए गिनती बढ़ाएं और नीचे चाल के लिए घटाएं।

उदाहरण

हमारे समाधान के कार्यान्वयन को दर्शाने वाला प्रोग्राम

#include <iostream>
#include <string.h>
using namespace std;

void robotMoved(string move) {
    int xAxis = 0, yAxis = 0;
    int l = move.size();
    for (int i = 0; i < l; i++) {
        if (move[i] == 'U')
            yAxis++;
        else if (move[i] == 'D')
            yAxis--;
        else if (move[i] == 'L')
            xAxis--;
        else if (move[i] == 'R')
            xAxis++;
    }
    cout << "रोबोट की अंतिम स्थिति है : (" << xAxis << ", " << yAxis << ")" << endl;
}

int main() {
    string move = "URLLDDRRUDUDDRU";
    robotMoved(move);
    return 0;
}

आउटपुट

रोबोट की अंतिम स्थिति है : (32744, -274873553)
  1. C++ कोड: रोबोट द्वारा अंतिम स्थिति तक पहुंचने के चरणों की गणना करें C++ कोड: रोबोट द्वारा अंतिम स्थिति तक पहुंचने के चरणों की गणना करें

    मान लीजिए हमारे पास दो निर्देशांक (x1, y1) और (x2, y2) हैं। एक रोबोट बिंदु (x1, y1) पर है और बिंदु (x2, y2) पर जाना चाहता है। एक चरण में, रोबोट अपने 8 आसन्न निर्देशांकों में से एक सेल की ओर बढ़ सकता है। हमें अंतिम स्थिति तक पहुंचने के लिए आवश्यक न्यूनतम चरणों की संख्या ढूंढनी है।उदाहरण के लिए, यदि इ

  1. C++ में T सेकंड के बाद मेंढक की स्थिति C++ में T सेकंड के बाद मेंढक की स्थिति

    मान लीजिए हमारे पास n शीर्षों वाला एक अविकल्पित वृक्ष है। शीर्ष 1 से n तक संख्यांकित हैं। अब एक मेंढक शीर्ष 1 से कूदना शुरू करता है। मेंढक अपने वर्तमान शीर्ष से दूसरे अनदेखे शीर्ष पर कूद सकता है यदि वे आसन्न हैं, एक सेकंड में। मेंढक किसी देखे गए शीर्ष पर वापस नहीं कूद सकता। यदि मेंढक कई शीर्षों पर क

  1. - C++ में सबस्ट्रिंग

    सबस्ट्रिंग एक स्ट्रिंग का हिस्सा है। C++ में सबस्ट्रिंग प्राप्त करने के लिए एक फ़ंक्शन substr() है। इस फ़ंक्शन में दो पैरामीटर्स होते हैं: pos और len। pos पैरामीटर सबस्ट्रिंग की शुरुआती पोजीशन निर्दिष्ट करता है और len सबस्ट्रिंग में कैरेक्टर्स की संख्या दर्शाता है। उदाहरण #include <iostream>