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

C++ कोड: जांचें कि सभी बल्ब चालू किए जा सकते हैं या नहीं


मान लीजिए हमारे पास एक संख्या m और n सब-लिस्ट के साथ एक नेस्टेड लिस्ट A है। मान लीजिए m बल्ब हैं, प्रारंभ में सभी बंद हैं। n बटन हैं और उनमें से प्रत्येक कुछ बल्बों के सेट से जुड़ा हुआ है। तो A[i] बल्बों का सेट है जिन्हें iवां स्विच दबाकर चालू किया जा सकता है। हमें जांचना है कि क्या हम सभी बल्बों को जला सकते हैं या नहीं।

उदाहरण के लिए, यदि इनपुट A = [[1, 4], [1, 3, 1], [2]]; m = 4 है, तो आउटपुट True होगा, क्योंकि सभी स्विच दबाकर हम सभी चार बल्ब चालू कर सकते हैं।

चरण

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

Define one set s for initialize i := 0, when i < size of A, update (increase i by 1), do:     for initialize j := 0, when j < size of A[i], update (increase j by 1), do:         insert A[i, j] into s if size of s is same as m, then:     return true Otherwise     return false

उदाहरण

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

#include  using namespace std; bool solve(vector> A, int m){     set s;     for (int i = 0; i < A.size(); i++){         for (int j = 0; j < A[i].size(); j++){             s.insert(A[i][j]);         }     }     if (s.size() == m)         return true;     else         return false; } int main(){     vector> A = { { 1, 4 }, { 1, 3, 1 }, { 2 } };     int m = 4;     cout <

इनपुट

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

आउटपुट

1

  1. C++ में जांचें कि ट्री आइसोमॉर्फिक है या नहीं C++ में जांचें कि ट्री आइसोमॉर्फिक है या नहीं

    बाइनरी ट्री में, प्रत्येक नोड में दो बच्चे होते हैं, यानी बायां बच्चा और दायां बच्चा। मान लीजिए हमारे पास दो बाइनरी ट्री हैं और कार्य यह जांचना है कि क्या एक ट्री को दूसरे ट्री को उसके बाएं तरफ फ्लिप करके प्राप्त किया जा सकता है या नहीं। एक ट्री आइसोमॉर्फिक है यदि इसे दूसरे ट्री को उसकी बाईं तरफ फ्ल

  1. - C++ में जांचें कि संख्या 23 से विभाज्य है या नहीं

    यहां हम एक प्रोग्राम देखेंगे, जो जांच सकता है कि कोई संख्या 23 से विभाज्य है या नहीं। मान लीजिए संख्या 1191216 दी गई है। यह 23 से विभाज्य है।विभाज्यता जांचने के लिए, हमें इस नियम का पालन करना होगा -हर बार संख्या/काटी गई संख्या का अंतिम अंक निकालेंपिछली गणना की गई संख्या के अंतिम अंक का 7 गुना काटी ग

  1. - C++ में जांचें कि संख्या कृष्णमूर्ति संख्या है या नहीं

    यहां हम देखेंगे कि संख्या कृष्णमूर्ति संख्या है या नहीं, इसकी जांच कैसे करें। एक संख्या कृष्णमूर्ति संख्या है, यदि उसके प्रत्येक अंक के फैक्टोरियल का योग संख्या के समान है। उदाहरण के लिए, यदि संख्या 145 है, तो योग = 1! + 4! + 5! = 1 + 24 + 120 = 145। तो यह एक कृष्णमूर्ति संख्या है।तर्क सरल है, हमें