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

C++ प्रोग्राम: कुछ संख्याएं चुनें जिनके लिए कोई उपसमुच्चय न हो जिसका योग k हो


मान लीजिए हमारे पास दो संख्याएं n और k हैं। हमें 1 से n तक के अधिकतम अलग-अलग तत्व चुनने हैं, ताकि कोई उपसमुच्चय न हो जिसका योग k के बराबर हो। यदि हम ढूंढ सकते हैं तो चुनी गई संख्याएं वापस करें।

उदाहरण के लिए, यदि इनपुट n = 5; k = 3 है, तो आउटपुट [4, 5, 2] होगा।

चरण

इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:

for initialize i := (k + 1) / 2, when i <= k - 1, update (increase i by 1), do:    print i for initialize i := k + 1, when i <= n, update (increase i by 1), do:    print i

उदाहरण

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

#include <bits/stdc++.h> using namespace std; void solve(int n, int k) {    for (int i = (k + 1) / 2; i <= k - 1; i++) {       cout << i << ", ";    }    for (int i = k + 1; i <= n; i++) {       cout << i << ", ";    } } int main() {    int n = 5;    int k = 3;    solve(n, k); }

इनपुट

5, 3

आउटपुट

2, 4, 5,
  1. C++ में पहले n प्राकृतिक संख्याओं के वर्गों का योग C++ में पहले n प्राकृतिक संख्याओं के वर्गों का योग

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

  1. - C++ प्रोग्राम: प्राकृतिक संख्याओं का योग गणना करें

    परिचयप्राकृतिक संख्याएं 1 से शुरू होने वाले धनात्मक पूर्णांक हैं। प्राकृतिक संख्याओं का क्रम है - 1, 2, 3, 4, 5, 6, 7, 8, 9, 10... पहली n प्राकृतिक संख्याओं का योग for लूप या फॉर्मूला का उपयोग करके गणना किया जा सकता है। for लूप का उपयोग करके प्राकृतिक संख्याओं का योगfor लूप का उपयोग करके n प्राकृतिक

  1. - C++ प्रोग्राम: दो संख्याएं जोड़ें

    परिचयजोड़ एक बुनियादी अंकगणितीय संक्रिया है। दो संख्याओं को जोड़ने वाला प्रोग्राम दो संख्याओं का जोड़ करता है और उनका योग स्क्रीन पर प्रिंट करता है। उदाहरण#include <iostream> using namespace std; int main() { int num1 = 15, num2 = 10, sum; sum = num1 + num2; cout << Sum of