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

स्रोत से गंतव्य तक ठीक k किनारों के साथ संभावित चलना


एक निर्देशित ग्राफ दिया गया है। अन्य दो शीर्ष u और v भी दिए गए हैं, u आरंभिक शीर्ष है, और v अंतिम शीर्ष है। हमारा काम ठीक k किनारों के साथ शीर्ष u से v तक कई पैदल चलना है। एल्गोरिथम में k का मान भी दिया गया है।

डायनेमिक प्रोग्रामिंग का उपयोग करके, हमें एक 3D तालिका बनाने की आवश्यकता है, जहां पंक्ति u के मानों को इंगित करेगी, कॉलम v मानों को इंगित करेगा और गहराई का उपयोग शुरू से अंत तक किनारों की संख्या को ट्रैक करने के लिए किया जाएगा।

इनपुट और आउटपुट

इनपुट:ग्राफ का आसन्न मैट्रिक्स:गंतव्य शीर्ष 3 है। K =20 1 1 10 0 0 10 0 0 10 0 0 0आउटपुट:2 संभावित वॉक हैं, 0 से 3 तक 2 किनारों के साथ। 

एल्गोरिदम

numberOdWalks(u, v, k)

इनपुट: प्रारंभ शीर्ष u, अंतिम शीर्ष v, किनारों की संख्या k.

आउटपुट: k किनारों के साथ संभावित चलने की संख्या।

आरंभ करें 3डी एरे काउंट ऑफ ऑर्डर को परिभाषित करें (nxnx k+1) //n 0 से k की सीमा में किनारे के लिए शीर्षों की संख्या है, i के लिए 0 से n-1 की सीमा में करें, j के लिए 0 से n की सीमा में करें -1, गिनें [i, j, edge] :=0 अगर edge =0 और i =j, तो count[i, j, edge] :=1 अगर edge =1 और (i, j) जुड़ा है, तो गिनती [i, j, किनारे]:=1 अगर किनारे> 1 है, तो 0 से n तक की श्रेणी के लिए, और साथ में मैं गिनती करता हूं [i, j, किनारे]:=गिनती [i, j, किनारे] + गिनती [ए, जे, एज - 1] किया हुआ किया हुआ रिटर्न काउंट [यू, वी, के]एंड

उदाहरण

#शामिल करें 0, 1}, {0, 0, 0, 0}}; int numberOfWalks (int u, int v, int k) {int count[NODE][NODE][k+1]; for (int edge =0; edge <=k; edge++) {// k किनारों के लिए (0..k) for (int i =0; i  1) {// के लिए एक से अधिक किनारों के लिए (int a =0; a  

आउटपुट

2 संभावित वॉक हैं, 0 से 3 तक 2 किनारों के साथ।


  1. लिनक्स में सोर्स से पैकेज कैसे बनाएं

    इसकी ओपन-सोर्स प्रकृति के अलावा, कस्टमाइज़ेबिलिटी अन्य कारणों में से एक है, कई उपयोगकर्ता लिनक्स को पसंद करते हैं:आप अपनी विशिष्ट आवश्यकताओं और शैली को पूरा करने के लिए लगभग हर फ़ाइल को संशोधित और कॉन्फ़िगर कर सकते हैं। इसमें स्रोत से पैकेज के पुनर्निर्माण की क्षमता शामिल है। स्रोत से पैकेज को फिर

  1. फेसबुक वास्तव में AI के साथ क्या कर रहा है?

    यदि फेसबुक के उच्च-शक्ति वाले, स्वयं-सिखाए गए कंप्यूटरों को साइट पर आपकी हर हरकत को देखने का विचार आपको थोड़ा अजीब लगता है, तो हो सकता है कि आप उनकी समर्पित एआई शोध प्रयोगशाला में बहुत दूर नहीं देखना चाहें। फेसबुक की फोटो टैगिंग, दोस्तों की सिफारिशें, फर्जी-न्यूज फिल्टर, टाइमलाइन सॉर्टिंग और कई अन्य

  1. क्या SSD – Windows से डेटा रिकवरी संभव है?

    क्या हम SSD से फ़ाइलें पुनर्स्थापित कर सकते हैं? हां, एक भ्रष्ट एसएसडी से डेटा रिकवरी संभव है जो अधिलेखित नहीं है। लेकिन कुछ सीमाएँ हैं जो हमें पता होनी चाहिए। तो, चलिए आगे पढ़ते हैं और SSD से डेटा को पुनर्स्थापित करने के बारे में विस्तार से समझते हैं। सॉलिड स्टेट ड्राइव (SSD) क्या है? पारंपरि