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

C++ प्रोग्राम यह जांचने के लिए कि हम दिए गए पैसे से उत्पाद खरीद सकते हैं या नहीं

मान लीजिए हमारे पास एक नंबर N है। एक केक विक्रेता 40 रुपये में केक बेच रहा है, और डोनट्स प्रत्येक के लिए 70 रुपये के साथ। हमें यह जांचना होगा कि क्या हम उनमें से कुछ को ठीक N रुपये में खरीद सकते हैं या नहीं।

इसलिए, अगर इनपुट एन =110 जैसा है, तो आउटपुट ट्रू होगा, क्योंकि 40 + 70 =110.

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

o := false
Define a function dfs(), this will take i,
if i > n, then:
   return false
if i is same as n, then:
   return true
if dfs(i + 40), then:
   return true
return dfs(i + 70)
From the main method, do the following
n := N
o := dfs(0)
return o

उदाहरण

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

#include <bits/stdc++.h>
using namespace std;
int n;
bool o = false;

bool dfs(int i) {
   if (i > n)
      return false;
   if (i == n)
      return true;
   if (dfs(i + 40))
      return true;
   return dfs(i + 70);
}
bool solve(int N) {
   n = N;
   o = dfs(0);
   return o;
}
int main(){
   int N = 110;
   cout << solve(N) << endl;
}

इनपुट

110

आउटपुट

1

  1. n आकार के दिए गए सरणी की जाँच करें n स्तरों के BST का प्रतिनिधित्व कर सकते हैं या C++ में नहीं

    हमारे पास एक सरणी ए है, हमें यह जांचना होगा कि सरणी एन स्तरों के साथ बीएसटी का प्रतिनिधित्व कर सकती है या नहीं। जैसा कि स्तर है, हम निम्नलिखित तरीके से एक पेड़ का निर्माण कर सकते हैं। मान लें कि कोई संख्या k है, k से बड़ा मान दाईं ओर जाता है, और k से कम बाईं ओर चलता है। मान लीजिए कि दो सूचियाँ हैं:{

  1. C++ प्रोग्राम यह जांचने के लिए कि क्या दिया गया बाइनरी ट्री एक AVL ट्री है या नहीं

    AVL ट्री एक सेल्फ-बैलेंसिंग बाइनरी सर्च ट्री है जहां सभी नोड्स के लिए बाएं और दाएं सबट्री की ऊंचाई के बीच का अंतर एक से अधिक नहीं हो सकता है। यह एक C++ प्रोग्राम है जो यह जांचने के लिए है कि दिया गया बाइनरी ट्री एक AVL ट्री है या नहीं। एल्गोरिदम Begin function AVL() returns true if the given tree i

  1. n को जांचने के लिए प्रोग्राम को पायथन में k के योग के रूप में दिखाया जा सकता है या नहीं

    मान लीजिए कि हमारे पास एक संख्या n है, और दूसरी संख्या k है। हमें जांचना है कि क्या n को k अभाज्य संख्याओं के योग के रूप में दर्शाया जा सकता है या नहीं। इसलिए, यदि इनपुट n =30 k =3 जैसा है, तो आउटपुट सही होगा क्योंकि 30 को 2 + 11 + 17 की तरह दर्शाया जा सकता है। इसे हल करने के लिए, हम इन चरणों का प