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

C++ प्रोग्राम: n पूर्णांकों की सरणी में हर दूसरा तत्व हटाने के बाद अंतिम तत्व ज्ञात करना

मान लें हमारे पास 1 से n तक पूर्णांकों वाला एक वृत्ताकार सरणी है। पहला तत्व से शुरू करके हर दूसरा तत्व हटाने के बाद सूची में शेष अंतिम तत्व ज्ञात करें। यदि इनपुट 5 है, तो सरणी [1, 2, 3, 4, 5] होगी। 1 से शुरू करें। प्रत्येक दूसरा तत्व हटाने के बाद होगा:

1 0 3 4 5
1 0 3 0 5
0 0 3 0 5
0 0 3 0 0

इसलिए सूची में शेष तत्व 3 है।

हम इस समस्या को पुनरावृत्ति का उपयोग करके हल करेंगे। मान लें n सम है। संख्या 2, 4, 6 हटा दी जाएंगी, फिर हम 1 से फिर से शुरू करेंगे। तो n/2 संख्याएं हटा दी गई हैं। और हम ऐसे शुरू करते हैं जैसे 1 से n/2 की सरणी में जिसमें केवल विषम अंक 1, 3, 5, ... n/2 हैं। इसलिए हम सूत्र इस तरह लिख सकते हैं:

solve(n) = 2*solve(n/2) - 1 [जब n सम हो]
solve(n) = 2*solve((n-1)/2) + 1 [जब n विषम हो]

आधार शर्त है solve(1) = 1।

उदाहरण

#include <iostream>
using namespace std;

int deleteSecondElement(int n) {
    if (n == 1)
        return 1;
    if (n % 2 == 0)
        return 2 * deleteSecondElement(n / 2) - 1;
    else
        return 2 * deleteSecondElement(((n - 1) / 2)) + 1;
}

int main() {
    int n = 5;
    cout << "Remaining Element: " << deleteSecondElement(n) << endl;
    n = 10;
    cout << "Remaining Element: " << deleteSecondElement(n) << endl;
}

आउटपुट

Remaining Element: 3
Remaining Element: 5
  1. - C++ प्रोग्राम: सरणी में प्रत्येक तत्व के लिए निकटतम बड़ा मान ज्ञात करना

    यहां हम देखेंगे कि सरणी में प्रत्येक तत्व के लिए निकटतम मान कैसे ज्ञात करें। यदि किसी तत्व x का अगला तत्व जो उससे बड़ा है, और सरणी में भी मौजूद है, तो वह उस तत्व का बड़ा मान होगा। यदि तत्व मौजूद नहीं है, तो -1 लौटाएं। मान लें सरणी तत्व [10, 5, 11, 6, 20, 12] हैं, तो बड़े तत्व [11, 6, 12, 10, -1, 20]

  1. - C++ प्रोग्राम: सरणी में प्रत्येक तत्व के लिए निकटतम बड़ा मान ज्ञात करना

    यहां हम देखेंगे कि सरणी में प्रत्येक तत्व के लिए निकटतम बड़ा मान कैसे ज्ञात करें। यदि किसी तत्व x का अगला तत्व जो उससे बड़ा है, और सरणी में भी मौजूद है, तो वह उस तत्व का बड़ा मान होगा। यदि तत्व मौजूद नहीं है, तो -1 लौटाएं। मान लें सरणी तत्व [10, 5, 11, 6, 20, 12] हैं, तो बड़े तत्व [11, 6, 12, 10, -1

  1. - C++ में सरणी का सबसे बड़ा एलिमेंट खोजने का प्रोग्राम

    एक सरणी में कई एलिमेंट्स होते हैं और सरणी में सबसे बड़ा एलिमेंट वह होता है जो अन्य एलिमेंट्स से बड़ा होता है। उदाहरण के लिए। 5 1 7 2 4 उपरोक्त सरणी में, 7 सबसे बड़ा एलिमेंट है और यह इंडेक्स 2 पर है। सरणी का सबसे बड़ा एलिमेंट खोजने का एक प्रोग्राम निम्नलिखित है। उदाहरण #include <iostream>