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

मिनियन गेम के विजेता का स्कोर और नाम खोजने के लिए पायथन प्रोग्राम

मान लीजिए कि दो खिलाड़ी अमल और बिमल हैं। वे एक खेल खेल रहे हैं। खेल के नियम इस प्रकार हैं -

  • दोनों खिलाड़ियों का एक ही स्ट्रिंग s है।

  • उन दोनों को s के अक्षरों का उपयोग करके सबस्ट्रिंग बनाना है।

  • बिमल को व्यंजन से शुरू होने वाले शब्द बनाने हैं।

  • अमल को स्वरों से शुरू होने वाले शब्द बनाने होते हैं।

  • खेल समाप्त हो जाएगा जब दोनों खिलाड़ियों ने सभी संभव विकल्प बना लिए हैं।

अब स्कोरिंग मानदंड इस प्रकार है:एक खिलाड़ी स्ट्रिंग s में सबस्ट्रिंग की प्रत्येक घटना के लिए 1 अंक प्राप्त करता है। हमें इस गेम के विजेता और उसके स्कोर को ढूंढना है।

इसलिए, यदि इनपुट s ="BANANA" जैसा है, तो आउटपुट बिमल होगा, 12 क्योंकि

<टीडी>
<टीडी>
<टीडी>
<टीडी>
<टीडी>
शब्द :BANANA
अमल
बिमल(विजेता)
सबस्ट्रिंग
स्कोर
सबस्ट्रिंग
स्कोर
A
3
B
1
AN
2
N
2
ANA
2
BA
1
ANAN
1
NA
2
ANANA
1
BAN
1

NAN
1

BANA
1

नाना
1

BANAN
1

BANANA
1
कुल 9
कुल 12

इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -

  • स्वर :=स्वरों का समूह
  • p1 :=0
  • p2 :=0
  • शब्द में प्रत्येक अनुक्रमणिका i और वर्ण c के लिए, करें
    • यदि c एक स्वर है, तो
      • p2 :=p2 + शब्द का आकार - i
    • अन्यथा,
      • p1 :=p1 + शब्द का आकार - i
  • अगर p1> p2, तो
    • रिटर्न 'बिमल', p1
  • अन्यथा जब p2> p1, तब
    • रिटर्न 'अमल', p2
  • अन्यथा,
    • वापस 'ड्रा' करें

उदाहरण

आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें

def solve(word):
   vowels = set('AEIOU')
   p1 = 0
   p2 = 0
   for i, c in enumerate(word):
      if c in vowels:
         p2 += len(word) - i
      else:
         p1 += len(word) - i
   if p1 > p2:
      return 'Bimal', p1
   elif p2 > p1:
      return 'Amal', p2
   else:
      return 'Draw'

word = "BANANA"
print(solve(word))

इनपुट

"BANANA"

आउटपुट

('Bimal', 12)

  1. पायथन का उपयोग करके एक सरणी गेम के विजेता को खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास एआर नामक एक सरणी है, इसमें अद्वितीय तत्व हैं और हमारे पास एक और मूल्य भी है। अब एक खेल पर विचार करें जहां हम सरणी के पहले दो तत्वों को लेते हैं। प्रत्येक मोड़ में, हम arr[0] की arr[1] से तुलना करते हैं, और बड़ा मान जीतता है और स्थिति 0 पर बना रहता है और छोटा मान सरणी के अंत मे

  1. पायथन में संख्याओं को हटाकर अधिकतम योगात्मक अंक प्राप्त करने का कार्यक्रम

    मान लीजिए हमारे पास संख्याओं की एक सूची है जिसे अंक कहा जाता है। आइए एक ऑपरेशन पर विचार करें जहां हम एक संख्या का चयन कर सकते हैं, फिर उसे हटा सकते हैं और संख्या और उसके दो आसन्न संख्याओं के योग से अपना स्कोर बढ़ा सकते हैं। यदि हम इस ऑपरेशन को जितनी बार चाहें उतनी बार कर सकते हैं, जब तक कि हम सूची म

  1. पायथन में i, j और k संख्या x, y, z अक्षरों के साथ बाद की संख्या खोजने का कार्यक्रम

    मान लीजिए कि हमारे पास x, y और z s के साथ एक स्ट्रिंग है, हमें बाद की संख्या ज्ञात करनी है जिसमें x वर्णों की संख्या है, उसके बाद y वर्णों की j संख्या और उसके बाद k z वर्णों की संख्या जहाँ i, j, k 1. इसलिए, यदि इनपुट s =xxyz जैसा है, तो आउटपुट 3 होगा, क्योंकि हम दो xyz और एक xxyz बना सकते हैं इसे