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

पायथन में संभव होने तक सरणी में तत्वों के जोड़ीदार अंतर को जोड़कर विजेता का पता लगाएं


मान लीजिए कि हमारे पास सकारात्मक पूर्णांकों की एक सरणी A है, तत्व अद्वितीय हैं, अब, दो खिलाड़ी P और Q एक खेल खेल रहे हैं। प्रत्येक चाल पर, कोई भी एक खिलाड़ी सरणी से दो संख्याएँ a और b चुनता है और यदि |a – b| सरणी में नहीं है उसके बाद खिलाड़ी इस संख्या को सरणी में जोड़ता है। जब कोई खिलाड़ी चाल नहीं चल सकता तो खेल हार जाता है। यदि खिलाड़ी P हमेशा खेल शुरू करता है तो हमें खेल के विजेता को खोजना होगा।

इसलिए, यदि इनपुट A =[8,9,10] जैसा है, तो आउटपुट P होगा।

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

  • n :=गिरफ्तारी का आकार

  • जी:=एआर [0], मैक्स_वल:=एआर [0]

  • 1 से n की सीमा में i के लिए, करें

    • जी:=जीसीडी (जी, एआर [i])

    • max_val :=अधिकतम max_val, arr[i]

  • कुल :=(max_val / g) - n

  • अगर योग विषम है, तो

    • वापसी 'पी'

  • वापसी 'क्यू'

उदाहरण

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

from math import gcd
def who_is_the_winner(arr) :
   n = len(arr)
   g = arr[0]
   max_val = arr[0]
   for i in range(1, n) :
      g = gcd(g, arr[i])
      max_val = max(max_val, arr[i])
   total = (max_val / g) - n
   if (total % 2 == 1) :
      return 'P'
   return 'Q'

arr = [8,9,10]
print(who_is_the_winner(arr))

इनपुट

[8,9,10]

आउटपुट

P

  1. पायथन प्रोग्राम में सरणी का योग ज्ञात करें

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

  1. एक सरणी में सबसे बड़ा तत्व खोजने के लिए पायथन प्रोग्राम

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

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

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