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

C++ कोड: जांचें कि पुनर्व्यवस्था से तत्वों का योग अधिकतम x हो सकता है


मान लीजिए हमारे पास आकार n की दो सरणी A और B हैं, और एक अन्य संख्या x है। हमें जांचना है कि क्या हम B में तत्वों को पुनर्व्यवस्थित कर सकते हैं, ताकि सभी i के लिए 0 से n-1 की रेंज में A[i] + B[1] <= x हो।

उदाहरण के लिए, यदि इनपुट A = [1, 2, 3]; B = [1, 1, 2]; x = 4 है, तो आउटपुट True होगा, क्योंकि यदि हम B को [1, 2, 1] की तरह पुनर्व्यवस्थित करते हैं, तो योग मान 1 + 1 <= 4, 2 + 2 <= 4, और 3 + 1 <= 4 होंगे।

चरण

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

n := size of A ans := 1 sum := 0 for initialize i := 0, when i < n, update (increase i by 1), do:     sum := A[i] + B[n - i - 1]     if sum > x, then:         ans := 0 if ans is non-zero, then:     return true Otherwise     return false

उदाहरण

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

#include  using namespace std; bool solve(vector A, vector B, int x){     int n = A.size();     int ans = 1;     int sum = 0;     for (int i = 0; i < n; ++i){         sum = A[i] + B[n - i - 1];         if (sum > x)             ans = 0;     }     if (ans)         return true;     else         return false; } int main(){     vector A = { 1, 2, 3 };     vector B = { 1, 1, 2 };     int x = 4;     cout << solve(A, B, x) << endl; }

इनपुट

{ 1, 2, 3 }, { 1, 1, 2 }, 4

आउटपुट

1

  1. - C++ में जांचें कि संख्या दो प्रचुर संख्याओं के योग के रूप में व्यक्त की जा सकती है या नहीं

    मान लीजिए हमारे पास एक संख्या है। हमें इसे दो प्रचुर संख्याओं (Abundant numbers) के योग के रूप में व्यक्त करना है, यदि हां, तो संख्याएं प्रिंट करें, अन्यथा -1 प्रिंट करें। एक संख्या को प्रचुर संख्या कहा जाता है यदि संख्या के सभी उचित भाजकों का योग, जिसे sum(n) से दर्शाया जाता है, संख्या के मान से अध

  1. C++ में जांचें कि क्या संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में दर्शाया जा सकता है C++ में जांचें कि क्या संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में दर्शाया जा सकता है

    इस खंड में, हम देखेंगे कि क्या हम एक संख्या को दो त्रिकोणीय संख्याओं के योग के रूप में व्यक्त कर सकते हैं या नहीं। त्रिकोणीय संख्याएं नीचे की तरह होती हैं - उदाहरण से, हम देख सकते हैं कि 1, 3, 6, 10 कुछ त्रिकोणीय संख्याएं हैं। हमें संख्या N (मान लीजिए 16) को दो त्रिकोणीय संख्याओं (6, 10) के योग के

  1. - C++ में जांचें कि क्या संख्या को क्रमागत संख्याओं के योग के रूप में व्यक्त किया जा सकता है

    यहां हम देखेंगे कि क्या एक संख्या को दो या अधिक क्रमागत संख्याओं के योग के रूप में दर्शाया जा सकता है या नहीं। मान लीजिए संख्या 12 है। इसे 3+4+5 के रूप में दर्शाया जा सकता है। इस समस्या को हल करने का एक सीधा और सबसे आसान तरीका है। यदि कोई संख्या 2 की घात है, तो इसे कुछ क्रमागत संख्याओं के योग के रू