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

C++ में दिए गए N के बराबर योग वाली अधिकतम अभाज्य संख्याएं


इस समस्या में, हमें एक संख्या n दी गई है। हमारा कार्य उन अधिकतम अभाज्य संख्याओं की गिनती ढूंढना है जिनका योग दिए गए N के बराबर हो।

यहां, हम अधिकतम अभाज्य संख्याएं ढूंढेंगे जिन्हें जोड़ने पर वह संख्या के बराबर होंगी।

अभाज्य संख्याएं वे संख्याएं हैं जिन्हें केवल स्वयं या एक से विभाजित किया जा सकता है।

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

इनपुट − N = 9

आउटपुट − 4

व्याख्या −

9 को अभाज्य संख्याओं के योग के रूप में निम्न तरीकों से दर्शाया जा सकता है: 2, 2, 2, 3 3, 3, 3 2, 2, 5 2, 7 इनमें से अधिकतम अभाज्य संख्याओं की संख्या 4 है।

उपयोग की गई अभाज्य संख्याओं की अधिकतम संख्या इस बात पर आधारित होगी कि योग बनाने के लिए कितनी छोटी अभाज्य संख्याओं को जोड़ा जा सकता है।

तो, सबसे छोटी अभाज्य संख्या 2 है। और अगली बड़ी अभाज्य संख्या 3 है, जो विषम है।

तो, काउंट अधिकतम होगा यदि हम योग की गणना करते समय केवल 2 और 3 का उपयोग करें। इस आधार पर हम समस्या को दो मामलों में विभाजित कर सकते हैं −

केस 1 − यदि N सम है, तो योग में सभी अभाज्य संख्याएं 2 होंगी। तो, काउंट n/2 होगा।

केस 2 − यदि N विषम है, तो योग में सभी अभाज्य संख्याएं 2 होंगी सिवाय एक के जो 3 होगी। तो, काउंट (n-1/2) होगा।

उदाहरण

C++ में दिए गए N के बराबर योग वाली अधिकतम अभाज्य संख्याएं खोजने का प्रोग्राम

 

#include <iostream> using namespace std; int maxPrimeCount(int n){    // विषम मामले के लिए परिणाम (n-1)/2 के समान होगा    return n / 2; } int main(){    int n = 9;    cout<<"The maximum number of primes whose sum is equal to "<<n<<" is "<<maxPrimeCount(n);    return 0; }

आउटपुट

The maximum number of primes whose sum is equal to 9 is 4

  1. दो BSTs से योग x वाले नोड जोड़ों की गणना - C++ दो BSTs से योग x वाले नोड जोड़ों की गणना - C++

    समस्या विवरण हमें दो बाइनरी सर्च ट्री (BST) और एक मान x दिया गया है। लक्ष्य उन नोड जोड़ों की गणना करना है जहाँ एक नोड पहले BST से और दूसरा दूसरे BST से हो, और उनके डेटा का योग x के बराबर हो। उदाहरण आउटपुट: 1 (जोड़ी: 8+6=14) आउटपुट: 2 (जोड़ियाँ: 5+15=20, 4+16=20) दृष्टिकोण पहले BST को इनऑर्डर (छोटे

  1. - C++ में N के बराबर योग के लिए आवश्यक न्यूनतम एक-अंकीय अभाज्य संख्याएँ

    समस्या विवरण उन न्यूनतम एक-अंकीय अभाज्य संख्याओं की संख्या ढूंढें जिनका योग N के बराबर हो। उदाहरण यदि N = 9 तो हमें 2 अभाज्य संख्याओं की आवश्यकता है यानी 7 और 2 ताकि योग 9 बने। उदाहरण #include <iostream> using namespace std; bool isValidIndex(int i, int val) { return (i - val) < 0 ? fa

  1. - C++ प्रोग्राम दी गई संख्या के अंकों का योग करने के लिए

    C++ भाषा में अंकों का योग गणना करने का एक उदाहरण निम्नलिखिक है, उदाहरण #include<iostream> using namespace std; int main() {    int x, s = 0;    cout << "संख्या दर्ज करें: ";    cin >> x;    while (x != 0) {       s =