Nontransitive पासा अच्छे छोटे खिलौने हैं जो संभाव्यता सिद्धांत में हमारे अंतर्ज्ञान को परिभाषित करते हैं। इस चुनौती के लिए हमें कुछ परिभाषाओं की आवश्यकता होगी:
एक ही समय में फेंके गए दो पासा ए और बी पर विचार करें । हम कहते हैं कि एक धड़कता बी अगर की संभावना एक से एक बड़ी संख्या दिखा बी की संभावना से सख्ती से अधिक है बी की तुलना में एक बड़ी संख्या दिखा एक ।
अब ए , बी , सी लेबल के साथ तीन पासा का एक सेट पर विचार करें । पासों का इस तरह के एक सेट कहा जाता है nontransitive अगर
- या तो A धड़कता है B , B धड़कता है C और C धड़कता है A
- या सी धड़कता बी , बी धड़कता है एक और एक धड़कता सी ।
मेरे पसंदीदा उदाहरणों में से एक के रूप में, ग्रिम पासा पर विचार करें , जिसके निम्नलिखित पक्ष हैं:
A: 3 3 3 3 3 6
B: 2 2 2 5 5 5
C: 1 4 4 4 4 4
दिलचस्प बात यह है कि, प्रत्येक मरने का मतलब नियमित मरना की तरह 3.5 है।
एक यह दिखा सकता है कि:
- एक बी 7 बी की संभावना के साथ धड़कता है ।
- बी धड़कता सी 7/12 की एक संभावना के साथ।
- सी 25/36 की संभावना के साथ ए धड़कता है ।
अब ये विशेष पासे भी अजीब हैं। यदि हम प्रत्येक को दो बार मरते हैं और परिणाम जोड़ते हैं, तो जो धड़कता है उसका क्रम उलट जाता है:
- बी 85/144 की संभावना के साथ ए धड़कता है ।
- सी धड़कता बी 85/144 के एक संभावना के साथ।
- एक धड़कता सी 671/1296 की एक संभावना के साथ।
चलो इस संपत्ति के साथ पासा का एक सेट कहते हैं ग्राईम-नॉनट्रांसिटिव ।
दूसरी ओर, यदि दो फेंकता का उपयोग करते समय पासा उनके मूल चक्र को बनाए रखता है, तो हम उन्हें दृढ़ता से अनाकर्षक कहते हैं । (यदि दो थ्रो के लिए कोई चक्र नहीं है, तो हम बस उन्हें अनैच्छिक कहते हैं ।)
चुनौती
तीन छह पक्षीय पासा, ऊपर गुण इस सेट है की जो निर्धारित करते हैं, और निम्नलिखित तार के उत्पादन में एक को देखते हुए: none
, nontransitive
, Grime-nontransitive
, strongly nontransitive
।
आप एक प्रोग्राम या फ़ंक्शन लिख सकते हैं, STDIN, कमांड-लाइन तर्क, प्रॉम्प्ट या फ़ंक्शन तर्क के माध्यम से इनपुट ले सकते हैं, और परिणाम को STDOUT में लिख सकते हैं या इसे एक स्ट्रिंग के रूप में वापस कर सकते हैं।
आप मान सकते हैं कि सभी पक्ष गैर-नकारात्मक पूर्णांक हैं। आप यह नहीं मान सकते कि पक्ष या पासा किसी विशेष क्रम में हैं। आप किसी भी सुविधाजनक सूची या स्ट्रिंग प्रारूप में इनपुट ले सकते हैं।
यह कोड गोल्फ है, इसलिए सबसे छोटा उत्तर (बाइट्स में) जीतता है।
परीक्षण के मामलों
none
1 2 3 4 5 6, 6 5 4 3 2 1, 1 3 5 2 4 6
1 1 1 6 6 6, 4 4 4 5 5 5, 5 5 5 5 5 5
1 1 2 5 6 6, 2 2 3 4 4 6, 2 3 3 4 4 5
0 1 2 3 4 5, 1 1 2 3 3 5, 1 2 2 2 3 5
3 13 5 7 13 7, 5 7 11 5 7 13, 5 9 13 5 7 9
nontransitive
1 2 2 4 6 6, 1 2 3 5 5 5, 2 3 4 4 4 4
1 4 4 4 4 4, 2 2 2 4 5 6, 2 3 3 3 5 5
1 2 1 6 5 6, 3 1 3 6 2 6, 2 4 2 4 4 5
3 4 6 6 7 7, 4 4 4 7 7 7, 5 5 5 5 6 7
2 5 11 11 14 14, 5 5 5 14 14 14, 8 8 8 8 8 17
Grime-nontransitive
3 3 3 3 3 6, 2 2 2 5 5 5, 1 4 4 4 4 4
1 1 4 5 5 5, 2 2 2 3 6 6, 3 3 3 4 4 4
2 1 4 6 4 4, 2 4 5 2 3 5, 3 3 6 3 3 3
11 11 13 15 15 16, 12 12 12 13 16 16, 13 13 13 14 14 14
4 4 7 16 19 19, 4 7 13 13 13 19, 4 10 10 10 16 19
strongly nontransitive
2 2 2 5 5 5, 2 3 3 3 5 5, 1 1 4 5 5 5
2 2 2 3 6 6, 2 2 2 5 5 5, 2 2 4 4 4 5
1 5 1 3 6 5, 6 6 4 2 2 1, 5 3 4 3 4 2
0 0 2 4 4 5, 0 1 1 3 5 5, 1 1 2 3 4 4
1 1 9 17 17 21, 1 5 5 13 21 21, 5 5 13 13 13 17
यदि आप अपने कोड को और भी अच्छी तरह से परखना चाहते हैं, तो पीटर टेलर एक संदर्भ कार्यान्वयन लिखने के लिए पर्याप्त थे, जिन्होंने 1 से 6 के पक्षों के साथ पासा के सभी ~ 5000 सेटों को वर्गीकृत किया और 3.5 का मतलब था। पास्टबिन लिंक
1 2 2 4 6 6, 1 2 3 5 5 5, 2 3 4 4 4 4
मुझे A <B 17/36, B> C 19/36, C <A 16/36 मिल रहा है।