কম্পিউটার টিউটোরিয়াল

পাইথনে লিস্ট এলিমেন্ট বাম বা ডান থেকে নিচুড়ে একক এলিমেন্ট बनानेয় প্রোগ্রাম


मान लीजिए हमारे पास nums नामक संख्याओं की एक सूची है, हमें इसे बाएं और दाएं दोनों तरफ से तब तक निचोड़ना है जब तक एक शेष तत्व नहीं बच जाता। हम प्रत्येक चरण में राज्यों को वापस करेंगे।

उदाहरण के लिए, यदि इनपुट है nums = [10,20,30,40,50,60], तो आउटपुट होगा

[ [10, 20, 30, 40, 50, 60],   [30, 30, 40, 110],   [60, 150],   [210] ]

इसे हल करने के लिए, हम निम्नलिखित चरणों का पालन करेंगे:

  • ret := केवल एक तत्व nums वाली सूची
  • जब तक nums का आकार > 1, करें
    • यदि nums का आकार, 2 के समान है, तो
      • nums := (nums[0] + nums[1]) तत्व वाली सूची बनाएं
    • अन्यथा जब nums का आकार, 3 के समान है, तो
      • nums := (nums[0] + nums[1] + nums[2]) तत्व वाली सूची बनाएं
    • अन्यथा,
      • nums := (nums[0] + nums[1]) तत्व वाली सूची बनाएं फिर nums से इंडेक्स 2 से तीसरे अंतिम तत्व तक की सूची डालें फिर (nums का दूसरा अंतिम तत्व + nums का अंतिम तत्व) तत्व वाली सूची जोड़ें
    • nums को ret के अंत में डालें
  • ret वापस करें

बेहतर समझ के लिए নিম্নলিখিত কোড দেখুন:

উদাহরণ

class Solution:    def solve(self, nums):       ret = [nums]       while len(nums) > 1:          if len(nums) == 2:             nums = [nums[0] + nums[1]]          elif len(nums) == 3:             nums = [nums[0] + nums[1] + nums[2]]          else:             nums = [nums[0] + nums[1]] + nums[2:-2] + [nums[-2] + nums[-1]]             ret.append(nums)       return ret ob = Solution() print(ob.solve([10,20,30,40,50,60]))

इनपুট

[10,20,30,40,50,60]

আউটপুট

[[10, 20, 30, 40, 50, 60], [30, 30, 40, 110], [60, 150], [210]]

  1. পাইথনে তালিকা থেকে অ-সন্নিহিত উপাদানগুলোর সর্বোচ্চ সমষ্টি খুঁজে বের করার প্রোগ্রাম

  2. পাইথনে লিস্ট থেকে N বড় এলিমেন্ট বের করা

  3. পাইথন প্রোগ্রাম: টাপল (Tuple) আসা পর্যন্ত লিস্টের এলিমেন্ট গণনা

  4. পাইথনে লিস্ট থেকে ডুপ্লিকেট এলিমেন্ট সরানো