पृष्ठभूमि
इस सवाल के समान है इस एक । मैंने नीचे दी गई सभी जानकारी प्रदान की है। यदि आप दूसरी चुनौती से परिचित हैं तो ध्यान दें कि हम एक ही हमले की प्रभावशीलता को देखने के बजाय सभी बचावों की रैंकिंग कर रहे हैं। यह महत्वपूर्ण है क्योंकि इसका मतलब है कि टेबल एक-दूसरे के व्युत्क्रम हैं और इस चुनौती का लक्ष्य उपयोगकर्ता इनपुट के बिना होना है।
पोकेमॉन में 18 प्रकार हैं:
Normal Fighting Flying Poison Ground Rock
Bug Ghost Steel Fire Water Grass
Electric Psychic Ice Dragon Dark Fairy
पोकेमॉन में एक या दो अद्वितीय प्रकार होते हैं जो उन्हें परिभाषित करते हैं (एक "प्रकार संयोजन")। उदाहरण के लिए, एक बुलबासौर का संयोजन संयोजन ग्रास / पॉइज़न (इसके दो प्रकार, ग्रास और ज़हर हैं) और एक चार्मेंडर में संयोजन संयोजन अग्नि (केवल एक प्रकार का) है। प्रकारों का क्रम मायने नहीं रखता (अर्थात ग्रास / जहर जहर / ग्रास के समान है)।
इन सभी प्रकार की ताकत और कमजोरियां हैं:
- एक प्रकार दूसरे प्रकार से कमजोर हो सकता है। आग पानी के खिलाफ कमजोर है। इसके परिणामस्वरूप आग में पानी के विरुद्ध 2 × गुणक होता है।
- एक प्रकार दूसरे प्रकार के लिए प्रतिरोधी हो सकता है। पानी जल प्रतिरोधी है। इसके परिणामस्वरूप पानी में पानी के मुकाबले 0.5 × गुणक होता है।
- एक प्रकार दूसरे प्रकार के लिए प्रतिरक्षा हो सकता है। उड़ान ग्राउंड के लिए प्रतिरक्षा है। यह ग्राउंड के खिलाफ 0 × गुणक वाले फ्लाइंग में परिणाम देता है।
कुछ भी एक मानक 1 × गुणक प्राप्त करता है। सामान्य के मुकाबले सामान्य में परिणाम होगा 1 × गुणक इसका एक उदाहरण है। इन खूबियों और कमजोरियों को कंपाउंड या नकारा जा सकता है। उदाहरण के लिए, आग पानी के लिए कमजोर है, लेकिन आग / पानी के दोहरे प्रकार में पानी के खिलाफ 1 × गुणक होगा क्योंकि आग से कमजोरी पानी से प्रतिरोध को नकार देगी। एक पूर्ण तालिका और आगे की व्याख्या के लिए, नीचे देखें।
उद्देश्य
यहाँ लक्ष्य सभी प्रकार के संयोजनों की एक सूची का उत्पादन करना है, जो उनकी रक्षात्मक क्षमता के क्रम में क्रमबद्ध है, और उनकी संख्या (प्रतिरोध + प्रतिरक्षा), कमजोरियों, और उन दोनों के बीच अनुपात को सूचीबद्ध करता है। विशेष रूप से, क्रमबद्ध क्रम निम्नानुसार है: कमजोरियों के सर्वोत्तम अनुपात (प्रतिरोध + प्रतिरक्षा) के साथ संयोजन को पहले सूचीबद्ध किया जाता है, और यदि कोई टाई है, तो सबसे अधिक प्रतिरोध और प्रतिरक्षा के साथ प्रकार संयोजन टाईब्रेक जीतेंगे। आप किसी भी माध्यम से इस सूची का निर्माण कर सकते हैं (एक स्पष्ट विधि प्रत्येक प्रकार के संयोजन के खिलाफ एक प्रकार की प्रभावशीलता की गणना करना है, लेकिन आपको अपने कार्यक्रम में पूर्वगामी या आंशिक रूप से पूर्व-उत्पादित उत्पादन को संग्रहीत करने की अनुमति दी जाती है यदि ऐसा करने से यह छोटा हो जाएगा।)
प्रभावशीलता तालिका टाइप करें
एक मानव पठनीय तालिका के लिए, नि डेटाबेस देखें । नोट: इस सूची के कॉलम वही हैं जो हम विचार कर रहे हैं। लेकिन सिर्फ मामले में, यहां वह तालिका है जो मैं एक संगणित कंप्यूटर-अनुकूल मैट्रिक्स ऑफ इफ़ेक्ट में सोच रहा हूं। मैंने हर मूल्य को 2 से गुणा किया है इसलिए हमें pesky दशमलव से निपटने की आवश्यकता नहीं है:
Attacking type
(same order)
Nor 222222422222202222
Fir 214211224221422211
D Wat 211441222222222212
e Ele 222122224122222212
f Gra 241114241424222222
e Ice 242221422222422242
n Fig 222222222441122124
d Poi 222212114241222221
i Gro 224044212222122222
n Fly 222414120221422222
g Psy 222222122214242422
Bug 242212121422422222
T Roc 114242414122222242
y Gho 022222012221242422
p Dra 211114222222224224
e Dar 222222422204212124
Ste 142211404111121211
Fai 222222142221220142
उदाहरण
यदि इस समस्या ने एकल-प्रकार के संयोजन के लिए केवल आउटपुट का अनुरोध किया था, तो एक वैध आउटपुट इस तरह दिखाई देगा:
Steel -> 11/3 = 3.66
Electric -> 3/1 = 3
Poison -> 5/2 = 2.5
Fire -> 6/3 = 2
Water -> 4/2 = 2
Ghost -> 4/2 = 2
Fairy -> 4/2 = 2
Fly -> 4/3 = 1.333
Dragon -> 4/3 = 1.333
Fighting -> 3/3 = 1
Normal -> 1/1 = 1
Ground -> 3/3 = 1
Psychic -> 2/2 = 1
Bug -> 3/3 = 1
Dark -> 3/3 = 1
Grass -> 4/5 = 0.8
Rock -> 4/5 = 0.8
Ice -> 1/4 = 0.25
हालांकि, आपके प्रोग्राम को आउटपुट में सभी दोहरे प्रकार के संयोजनों को सूचीबद्ध करने की आवश्यकता होगी, इसलिए इसका आउटपुट काफी लंबा होगा।
शुभकामनाएँ! बाइट्स में सबसे छोटा कोड जीतता है।