एक स्टोकेस्टिक मैट्रिक्स मार्कोव श्रृंखला के संदर्भ में उपयोग की जाने वाली संभावनाओं का एक मैट्रिक्स है।
एक सही स्टोचैस्टिक मैट्रिक्स एक मैट्रिक्स है जहां प्रत्येक पंक्ति के लिए रकम होती है 1
।
एक बायां स्टोकेस्टिक मैट्रिक्स एक मैट्रिक्स है जहां प्रत्येक कॉलम को कहा जाता है 1
।
एक दोगुना स्टोचस्टिक मैट्रिक्स एक मैट्रिक्स है जहां प्रत्येक पंक्ति और प्रत्येक कॉलम के लिए गाया जाता है 1
।
इस चुनौती में, हम पूर्णांक का उपयोग करके प्रतिशत में संभावनाओं का प्रतिनिधित्व करेंगे । एक पंक्ति या कॉलम उस मामले में होना चाहिए 100
और नहीं 1
।
आपका लक्ष्य एक प्रोग्राम या फ़ंक्शन लिखना है, जो पूर्णांक के एक वर्ग मैट्रिक्स को इनपुट के रूप में दिया गया है, चार मानों में से एक को दर्शाता है कि मैट्रिक्स या तो सही स्टोचस्टिक, बाएं स्टोचैस्टिक, दोगुना स्टोचस्टिक या उन में से कोई भी नहीं है।
इनपुट
आप मैट्रिक्स के किसी भी उचित प्रतिनिधित्व का उपयोग कर सकते हैं जो इनपुट के लिए आपकी भाषा के लिए स्वाभाविक है। उदाहरण के लिए, सूचियों की एक सूची, अल्पविराम की एक पंक्ति को लाइनब्रेक द्वारा अलग की गई पंक्तियों के साथ अलग किया जाता है, आदि।
इनपुट मैट्रिक्स हमेशा चौकोर होगा और इसमें केवल गैर-नकारात्मक पूर्णांक होंगे। इनपुट मैट्रिक्स हमेशा कम से कम होगी 1×1
।
आप STDIN
फ़ंक्शन तर्क, या समान कुछ के रूप में इनपुट का उपयोग कर सकते हैं ।
उत्पादन
आपको चार अलग-अलग आउटपुट का चयन करना चाहिए जो दाएं स्टोचैस्टिक , लेफ्ट स्टोचैस्टिक , डबल स्टोचस्टिक या उन में से कोई भी अनुरूप हो । इनपुट के पारित होने के बावजूद वे आउटपुट स्थिर होना चाहिए। आपका प्रोग्राम एक ही मामले के लिए अलग-अलग आउटपुट नहीं लौटा सकता है, उदाहरण के लिए यह कहना कि कोई भी नकारात्मक संख्या उन में से किसी से मेल खाती है जो मान्य नहीं है।
संक्षेप में, चार संभावित मामलों में आपके आउटपुट के बीच 1 से 1 का पत्राचार होना चाहिए। उन चार outputs के कुछ उदाहरण होगा {1, 2, 3, 4}
या {[1,0], [0,1], [1,1], [0,0]}
या यहाँ तक कि {right, left, doubly, none}
।
कृपया अपने उत्तर में इंगित करें कि आपके प्रोग्राम द्वारा उपयोग किए जाने वाले चार आउटपुट।
यदि एक मैट्रिक्स दोगुना स्टोचस्टिक है, तो आपको दोगुना स्टोचस्टिक के अनुरूप आउटपुट वापस करना होगा, और दाएं या बाएं स्टोचस्टिक नहीं।
आप आउटपुट को प्रिंट कर सकते हैं STDOUT
, इसे किसी फ़ंक्शन या किसी समान से वापस कर सकते हैं।
परीक्षण के मामलों
[100] => Doubly stochastic
[42] => None of those
[100 0 ] => Doubly stochastic
[0 100]
[4 8 15]
[16 23 42] => Left stochastic
[80 69 43]
[99 1 ] => Right stochastic
[2 98]
[1 2 3 4 ]
[5 6 7 8 ] => None of those
[9 10 11 12]
[13 14 15 16]
स्कोरिंग
यह कोड-गोल्फ है , इसलिए बाइट्स में सबसे कम जवाब जीतता है।