-
C++ में रेंज योग की गणना
मान लीजिए हमारे पास एक पूर्णांक सरणी nums है, हमें उन रेंज योगों की संख्या ढूंढनी है जो रेंज [lower, upper] में दोनों समावेशी हैं। रेंज योग S(i, j) को nums में इंडेक्स i से इंडेक्स j तक के तत्वों के योग के रूप में परिभाषित किया गया है जहां i <= j।तो यदि इनपुट [-3,6,-1] जैसा है, lower = -2 और upper =
-
C++ में रूसी गुड़िया लिफाफे
मान लीजिए हमारे पास कुछ लिफाफे हैं, इन लिफाफों में ऊंचाई और चौड़ाई के मान जोड़े के रूप में हैं। हम एक लिफाफे को दूसरे के अंदर रख सकते हैं यदि दूसरे लिफाफे की ऊंचाई और चौड़ाई दोनों पहले वाले से छोटी हैं। तो, अधिकतम कितने लिफाफे हम एक-दूसरे के अंदर रख सकते हैं। तो, यदि इनपुट [[5,5], [6,4], [6,8], [2,3
-
C++ में K से बड़ा नहीं अधिकतम आयत योग
मान लीजिए हमारे पास एक 2D मैट्रिक्स है, और एक पूर्णांक k। हमें मैट्रिक्स में एक आयत का अधिकतम योग ढूंढना है, जैसे कि उसका योग k से बड़ा नहीं है। तो, यदि इनपुट इस तरह है -1010-32और k = 3, तो आउटपुट 3 होगा, क्योंकि चिह्नित आयत का योग 3 है।इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे -एक फ़ंक
-
C++ में सम्मिलित करें, हटाएं, GetRandom O(1) - डुप्लिकेट अनुमत
मान लीजिए, हम एक डेटा संरचना बनाना चाहते हैं, जो कुछ ऑपरेशनों का समर्थन करती है, ये ऑपरेशन O(1) समय में किए जाने चाहिए। तो ये ऑपरेशन निम्नलिखित हैं -insert(x): संग्रह में x डालेंremove(x): संग्रह से x हटाएंgetRandom(): उस संग्रह से यादृच्छिक तत्व ढूंढें।इसे हल करने के लिए, हम निम्नलिखित चरणों का पाल
-
C++ में मेंढक कूद
मान लीजिए एक मेंढक है जो एक नदी पार कर रहा है। नदी x इकाइयों में विभाजित है और प्रत्येक इकाई पर एक पत्थर हो सकता है। मेंढक एक पत्थर पर कूद सकता है, लेकिन पानी पर नहीं। यहां हमारे पास आरोही क्रम में क्रमबद्ध पत्थरों की स्थितियों की एक सूची है, हमें जांचना है कि क्या मेंढक अंतिम पत्थर पर उतरकर नदी पार
-
C++ में सरणी विभाजन का सबसे बड़ा योग
मान लीजिए हमारे पास धनात्मक पूर्णांकों की एक सरणी और एक मान m है। हम इस सरणी को m संख्या के सन्निकट उपसरणियों में विभाजित कर सकते हैं। हमें इन m उपसरणियों में सबसे बड़े योग को न्यूनतम करने के लिए एक एल्गोरिदम तैयार करना है।तो यदि सरणी [7,2,4,10,9] है, और m = 2, तो योग 19 होगा, क्योंकि हम दो उपसरणिया
-
C++ में शब्दकोश क्रम में K-वां सबसे छोटा
मान लीजिए हमारे पास दो मान n और k हैं। हमें 1 से n की सीमा में शब्दकोश क्रम में kवां सबसे छोटा पूर्णांक ढूंढना है। तो यदि इनपुट n = 14 और k = 3 जैसा है, तो आउटपुट 11 होगा, क्योंकि अनुक्रम [1, 10, 11, 12, 13, 14, 2, 3, 4, 5, 6, 7, 8, 9] होगा, फिर kवीं संख्या 11 है।इसे हल करने के लिए, हम निम्नलिखित चर
-
C++ में अंकगणितीय स्लाइस II - उपअनुक्रम
मान लीजिए हमारे पास एक सरणी A है, जहां N संख्याएं मौजूद हैं। उस सरणी का एक उपअनुक्रम स्लाइस किसी भी पूर्णांक अनुक्रम की तरह है जैसे (K0, K1, K2, ... Kn) जैसे कि 0 <= K0 < K1 < K2 < ... < Kn = 2। तो हमें अंकगणितीय स्लाइस की संख्या लौटानी है।तो यदि इनपुट [2,4,6,8,10] जैसा है, तो उत्तर 7 होगा, क्योंकि
-
C++ में गरीब सूअर समस्या
मान लीजिए 1000 बाल्टियां हैं, उनमें से एक जहरीली है, बाकी पानी से भरी हैं। वे सभी समान दिखती हैं। यदि एक सूअर जहर पीता है तो वह 15 मिनट के भीतर मर जाएगा। एक घंटे के भीतर जहरीली बाल्टी का पता लगाने के लिए हमें न्यूनतम कितने सूअरों की आवश्यकता होगी?अब सामान्य मामले पर विचार करें और इसके लिए एक एल्गोरि
-
C++ में संयोजित शब्द
मान लीजिए हमारे पास शब्दों की एक सूची है। ये शब्द विशिष्ट हैं। हमें एक एल्गोरिदम तैयार करना है जो दी गई शब्दों की सूची में सभी संयोजित शब्दों को ढूंढेगा। एक संयोजित शब्द वास्तव में एक स्ट्रिंग है जो दिए गए सरणी में कम से कम दो छोटे शब्दों से पूरी तरह से बना है।तो यदि शब्द [cow, cows, cowsgoatcows, g
-
C++ में सबसे बड़ा पालिंड्रोम उत्पाद
मान लीजिए हमारे पास इनपुट n है, हमें दो n-अंकीय संख्याओं के गुणनफल से बनने वाला सबसे बड़ा पालिंड्रोम ढूंढना है। चूंकि संख्याएं बहुत बड़ी होती हैं, हम 1337 से मोड्यूलो कर सकते हैं। तो यदि इनपुट 2 है, तो उत्तर 987 होगा, 987 = (99*91) mod 1337 = 9009 mod 1337 = 987।इसे हल करने के लिए, हम निम्नलिखित चरण
-
C++ में स्लाइडिंग विंडो मेडियन
मान लीजिए हमारे पास संख्याओं की एक सूची है, और हमारे पास एक विंडो आकार k है, हमें स्लाइडिंग विंडो तरीके से मेडियन की सूची ढूंढनी है। तो, यदि वितरण नीचे जैसा है -विंडो स्थितिमेडियन13-1-35368113-1-35368-113-1-35368-113-1-35368313-1-35368513-1-353686यहां हमने k को 3 माना है, और परिणाम [1,-1,-1,3,5,6] ह
-
C++ में जूमा गेम समस्या
आइए जूमा गेम पर विचार करें। मान लीजिए टेबल पर गेंदों की एक पंक्ति है, ये गेंदें लाल (R), पीली (Y), नीली (B), हरी (G), और सफेद (W) रंग की हैं। हमारे पास भी कई गेंदें हैं। अब, प्रत्येक बार, हम अपनी तरफ से एक गेंद चुन सकते हैं, और उसे पंक्ति में डाल सकते हैं। फिर, यदि एक ही रंग की 3 या अधिक गेंदों का
-
C++ में रिवर्स पेयर्स समस्या
मान लीजिए हमारे पास एक ऐरे है, इस ऐरे में हम एक पेयर (A[i] और A[j]) को महत्वपूर्ण रिवर्स पेयर कहेंगे यदि यह निम्नलिखित शर्त को संतुष्ट करता है: यदि i < j और A[i] > 2 * A[j] हमें महत्वपूर्ण रिवर्स पेयर्स की संख्या ढूंढनी है। यदि इनपुट [2,8,7,7,2] है, तो परिणाम 3 होगा। समाधान दृष्टिकोण (मर्ज
-
C++ में IPO समस्या
मान लीजिए एक कंपनी A जल्द ही अपना IPO शुरू करना चाहती है। अपने शेयरों की अच्छी कीमत पाने के लिए, A IPO से पहले कुछ प्रोजेक्ट्स पर काम करके अपनी पूंजी बढ़ाना चाहती है। A के पास सीमित संसाधन हैं, वह IPO से पहले अधिकतम k अलग-अलग प्रोजेक्ट्स ही पूरा कर सकती है। क्या आप A की मदद कर सकते हैं, अधिकतम k अल
-
C++ में सुपर वॉशिंग मशीन्स समस्या
मान लीजिए हमारे पास एक पंक्ति में n सुपर वॉशिंग मशीनें हैं। प्रारंभ में, प्रत्येक वॉशिंग मशीन में कुछ कपड़े हैं या खाली है। अब, प्रत्येक चाल में, हम कोई भी m (1 ≤ m ≤ n) वॉशिंग मशीनें चुन सकते हैं, और प्रत्येक वॉशिंग मशीन का एक कपड़ा उसके आसन्न वॉशिंग मशीनों में से एक को एक साथ पास कर सकते हैं। मान
-
C++ में रिमूव बॉक्सेस समस्या
मान लीजिए हमारे पास अलग-अलग रंगों के कई बॉक्स हैं। ये रंग अलग-अलग पॉजिटिव नंबरों द्वारा दर्शाए गए हैं। हम कई राउंड्स में बॉक्सेस को तब तक हटा सकते हैं जब तक कोई बॉक्स न बचे। प्रत्येक राउंड में हम एक ही रंग के कुछ कंटीन्यूअस बॉक्सेस (k बॉक्सेस से बने, k ≥ 1) चुन सकते हैं, उन्हें हटा सकते हैं और k*k
-
C++ में स्टूडेंट अटेंडेंस रिकॉर्ड II समस्या
मान लीजिए हमारे पास एक पॉजिटिव इंटीजर n है, हमें लंबाई n के सभी संभावित अटेंडेंस रिकॉर्ड्स की संख्या ढूंढनी है जो रिवॉर्डेबल हों। चूंकि उत्तर बहुत बड़ा हो सकता है, हम इसे मॉड 10⁹ + 7 का उपयोग करके लौटाएंगे। स्टूडेंट अटेंडेंस रिकॉर्ड में स्ट्रिंग में केवल ये तीन वर्ण हो सकते हैं: A का अर्थ है अनुप
-
C++ में जूमा गेम (Zuma Game)
आइए जूमा गेम (Zuma Game) के बारे में विचार करें। मान लीजिए हमारे पास टेबल पर गेंदों की एक पंक्ति है, ये गेंदें लाल (R), पीली (Y), नीली (B), हरी (G), और सफेद (W) रंग की हैं। हमारे पास भी कई गेंदें हैं।अब, प्रत्येक बार, हम अपनी तरफ से एक गेंद चुन सकते हैं, और इसे पंक्ति में डाल सकते हैं। फिर, यदि एक ह
-
C++ में रिवर्स पेयर्स (Reverse Pairs)
मान लीजिए हमारे पास एक ऐरे है, इस ऐरे में हम एक जोड़ी (A[i] और A[j]) को महत्वपूर्ण रिवर्स पेयर कहेंगे यदि यह निम्न शर्त को संतुष्ट करता है -यदि i < j और A[i] > 2 * nums[j]हमें महत्वपूर्ण रिवर्स पेयर्स की संख्या ज्ञात करनी है। तो यदि इनपुट [2,8,7,7,2] जैसा है, तो परिणाम 3 होगा।इसे हल करने के लि