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

पहले N प्राकृतिक संख्याओं को व्यवस्थित करें ताकि सभी आसन्न तत्वों का निरपेक्ष अंतर > 1 हो

हमारे पास पहले N प्राकृतिक संख्याएं हैं। हमारा कार्य उनमें से एक क्रमपरिवर्तन प्राप्त करना है जहां हर दो लगातार तत्वों के बीच निरपेक्ष अंतर > 1 हो। यदि ऐसा कोई क्रमपरिवर्तन मौजूद नहीं है, तो -1 वापस करें।

दृष्टिकोण सरल है। हम लालची दृष्टिकोण का उपयोग करेंगे। हम सभी विषम संख्याओं को बढ़ते या घटते क्रम में व्यवस्थित करेंगे, फिर सभी सम संख्याओं को घटते या बढ़ते क्रम में व्यवस्थित करेंगे।

एल्गोरिदम

arrangeN(n)

शुरुआत
    यदि N 1 है, तो 1 वापस करें
    यदि N 2 या 3 है, तो -1 वापस करें क्योंकि ऐसा कोई क्रमपरिवर्तन मौजूद नहीं है
    even_max और odd_max को N से कम या बराबर अधिकतम सम और विषम संख्या के रूप में सेट करें
    सभी विषम संख्याओं को अवरोही क्रम में व्यवस्थित करें
    सभी सम संख्याओं को अवरोही क्रम में व्यवस्थित करें
समाप्त

उदाहरण

#include <iostream>
using namespace std;

void arrangeN(int N) {
    if (N == 1) {
        cout << "1";
        return;
    }
    if (N == 2 || N == 3) {
        cout << "-1";
        return;
    }
    int even_max = -1, odd_max = -1;
    if (N % 2 == 0) {
        even_max = N;
        odd_max = N - 1;
    } else {
        odd_max = N;
        even_max = N - 1;
    }
    while (odd_max >= 1) {
        cout << odd_max << " ";
        odd_max -= 2;
    }
    while (even_max >= 2) {
        cout << even_max << " ";
        even_max -= 2;
    }
}

int main() {
    int N = 8;
    arrangeN(N);
    return 0;
}

आउटपुट

7 5 3 1 8 6 4 2
  1. C प्रोग्राम: पहले n प्राकृतिक संख्याओं के घन का योग C प्रोग्राम: पहले n प्राकृतिक संख्याओं के घन का योग

    इस समस्या में हम देखेंगे कि कैसे हम पहले n प्राकृतिक संख्याओं के घन का योग प्राप्त कर सकते हैं। यहां हम एक फॉर लूप का उपयोग कर रहे हैं, जो 1 से n तक चलता है। प्रत्येक चरण में हम पद के घन की गणना कर रहे हैं और फिर इसे योग में जोड़ रहे हैं। यह प्रोग्राम पूरा होने में O(n) समय लेता है। लेकिन अगर हम इ

  1. - Python में अधिकतम N ढूंढना जैसे कि पहले N प्राकृतिक संख्याओं के वर्ग का योग X से अधिक न हो

    मान लीजिए हमारे पास एक दिया गया पूर्णांक X है, हमें अधिकतम मान N ढूंढना है ताकि पहले N प्राकृतिक संख्याओं का योग मान X से अधिक न हो। तो, यदि इनपुट X = 7 की तरह है, तो आउटपुट 2 होगा क्योंकि 2, N का अधिकतम संभव मान है, N = 3 के लिए, श्रृंखला का योग X = 7 से अधिक हो जाएगा। तो, 1^2 + 2^2 + 3^2 = 1 + 4 +

  1. - पायथन का उपयोग करके दी गई सूची में आसन्न तत्वों के बीच अंतर की गणना करना

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