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

सी ++ प्रोग्राम एक्स स्वैप के बाद दो प्रतिद्वंद्वी छात्रों के बीच अधिकतम दूरी खोजने के लिए

मान लीजिए हमारे पास चार संख्याएँ n, x, a और b हैं। पंक्ति में n विद्यार्थी हैं। इनमें दो विरोधी छात्र भी शामिल हैं। उनमें से एक स्थिति a पर है और दूसरा स्थान b पर है। पदों को 1 से n तक बाएँ से दाएँ क्रमांकित किया गया है। हम इन दो छात्रों के बीच की दूरी को अधिकतम करना चाहते हैं। हम निम्नलिखित ऑपरेशन x बार कर सकते हैं:दो आसन्न छात्रों का चयन करें और फिर उन्हें स्वैप करें। हमें x स्वैप के बाद अधिकतम संभव दूरी ज्ञात करनी होगी।

तो, अगर इनपुट n =5 की तरह है; एक्स =1; ए =3; बी =2, तो आउटपुट 2 होगा, क्योंकि हम छात्रों को स्थिति 3 और 4 पर स्वैप कर सकते हैं, इसलिए इन दोनों छात्रों के बीच की दूरी है |4 - 2| =2.

कदम

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

return minimum of (|a - b| + x) and (n - 1)
. की वापसी करें

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -

#include <bits/stdc++.h>
using namespace std;

int solve(int n, int x, int a, int b) {
   return min(abs(a - b) + x, n - 1);
}
int main() {
   int n = 5;
   int x = 1;
   int a = 3;
   int b = 2;
   cout << solve(n, x, a, b) << endl;
}

इनपुट

5, 1, 3, 2

आउटपुट

2

  1. बाइनरी ट्री के दो नोड्स के बीच की दूरी ज्ञात करने के लिए प्रश्न - C++ में O(logn) विधि

    इस समस्या में, हमें एक बाइनरी ट्री दिया जाता है और हमें Q प्रश्न दिए जाते हैं। हमारा कार्य C++ में बाइनरी ट्री - O(logn) विधि के दोनोड्स के बीच की दूरी का पता लगाने के लिए क्वेरीज़ को हल करने के लिए एक प्रोग्राम बनाना है। समस्या का विवरण प्रत्येक क्वेरी में, हमें बाइनरी ट्री के दो नोड दिए जाते हैं

  1. C++ प्रोग्राम में एक बाइनरी ट्री के दो नोड्स के बीच की दूरी का पता लगाएं

    इस समस्या में हमें एक बाइनरी ट्री और दो नोड दिए जाते हैं। हमारा काम बाइनरी ट्री के दो नोड्स के बीच की दूरी का पता लगाने के लिए एक प्रोग्राम बनाना है। समस्या का विवरण हमें दो नोड्स के बीच की दूरी को खोजने की जरूरत है जो कि किनारों की न्यूनतम संख्या है जो एक नोड से दूसरे नोड में जाने पर ट्रैवर्स की ज

  1. C++ में किसी भी शहर और स्टेशन के बीच अधिकतम दूरी ज्ञात कीजिए

    अवधारणा दिए गए शहरों की संख्या के संबंध में एन की संख्या 0 से एन -1 तक और जिन शहरों में स्टेशन स्थित हैं, हमारा काम किसी भी शहर और उसके निकटतम स्टेशन के बीच अधिकतम दूरी निर्धारित करना है। यह ध्यान दिया जाना चाहिए कि स्टेशनों वाले शहरों को किसी भी क्रम में दिया जा सकता है। इनपुट numOfCities = 6, sta