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

प्रोग्राम प्रोग्राम की जाँच करने के लिए कन्वेंशन व्यवस्था सही है या नहीं पायथन में

मान लीजिए कि हमारे पास एक संख्या n है, यह एक सम्मेलन में प्रवेश करने वाले प्रोग्रामर का प्रतिनिधित्व कर रहा है, और हमारे पास संख्या की एक सूची भी है, सम्मेलन 1 एक प्रोग्रामर का प्रतिनिधित्व करता है और 0 खाली स्थान का प्रतिनिधित्व करता है। अब शर्त यह है कि कोई भी दो प्रोग्रामर एक दूसरे के बगल में नहीं बैठ सकते हैं, हमें यह जांचना होगा कि सभी एन प्रोग्रामर सम्मेलन में प्रवेश कर सकते हैं या नहीं।

इसलिए, यदि इनपुट n =2, कन्वेंशन =[0, 0, 1, 0, 0, 0, 1] जैसा है, तो आउटपुट सही होगा

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

  • मैं के लिए 0 से लेकर रूपा के आकार तक, करें
    • a:=0 जब i-1 <0 अन्यथा i-1
    • b:=रूपांतरण -1 का आकार जब i+1>=रूपांतरण का आकार अन्यथा i+1
    • यदि रूपांतरण [i] 0 के समान है और रूपांतरण [a] 0 के समान है और रूपांतरण [b] 0 के समान है, तो
      • रूपांतरण[i]:=1
      • n :=n - 1
  • सही लौटें जब n <=0, अन्यथा 0.

उदाहरण

class Solution:
   def solve(self, n, conv):
      for i in range(len(conv)):
         a=0 if i-1<0 else i-1
         b=len(conv)-1 if i+1>=len(conv) else i+1
         if conv[i]==0 and conv[a]==0 and conv[b]==0:
            conv[i]=1
            n-=1
      return n<=0
ob = Solution()
n = 2
convention = [0, 0, 1, 0, 0, 0, 1]
print(ob.solve(n, convention))

इनपुट

2, [0, 0, 1, 0, 0, 0, 1]

आउटपुट

True

  1. ढेर की जाँच करने का कार्यक्रम पायथन में अधिकतम ढेर बना रहा है या नहीं

    मान लीजिए कि हमारे पास ढेर के पेड़ का प्रतिनिधित्व करने वाली एक सूची है। जैसा कि हम जानते हैं कि हीप एक पूर्ण बाइनरी ट्री है। हमें यह जांचना है कि तत्व अधिकतम ढेर बना रहे हैं या नहीं। जैसा कि हम जानते हैं कि अधिकतम ढेर के लिए प्रत्येक तत्व अपने दोनों बच्चों से बड़ा होता है। इसलिए, यदि इनपुट nums =[

  1. बिंदुओं की जाँच करने के लिए प्रोग्राम अवतल बहुभुज बना रहे हैं या नहीं पायथन में

    मान लीजिए कि हमारे पास बहुभुज के बाहरी बिंदु दक्षिणावर्त क्रम में हैं। हमें यह जांचना है कि ये बिंदु उत्तल बहुभुज बना रहे हैं या नहीं। एक बहुभुज को अवतल कहा जाता है यदि उसका कोई एक आंतरिक कोण 180° से अधिक हो। इस आरेख से यह स्पष्ट है कि सीडीई को छोड़कर प्रत्येक तीन क्रमागत बिंदुओं के लिए आंतरिक को

  1. बिंदुओं की जाँच करने का कार्यक्रम पायथन में उत्तल पतवार बना रहा है या नहीं

    मान लीजिए कि हमारे पास बहुभुज के बाहरी बिंदु दक्षिणावर्त क्रम में हैं। हमें यह जांचना होगा कि ये बिंदु उत्तल पतवार बना रहे हैं या नहीं। इस आरेख से यह स्पष्ट है कि प्रत्येक तीन क्रमागत बिंदुओं के लिए आंतरिक कोण 180° से अधिक नहीं होता है। इसलिए यदि सभी कोण 180° से अधिक नहीं हैं तो बहुभुज उत्तल पतवा