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

পাইথনে লিস্টে k এবং -k উভয়ই আছে এমন সর্বোচ্চ k বের করার প্রোগ্রাম


মান লো যাক আমাদের nums নামক একটি সংখ্যার তালিকা আছে, আমাদের সবচেয়ে বড় সংখ্যা k বের করতে হবে যাতে k এবং -k উভয়ই nums-এ থাকে (তারা একই সংখ্যাও হতে পারে)। যদি এমন কোনো এলিমেন্ট না থাকে, তবে -1 রিটার্ন করুন।

উদাহরণস্বরূপ, যদি ইনপুট হয় [-5, 2, 9, -6, 5, -9], তবে আউটপুট হবে 9।

এটি সমাধান করতে আমরা নিচের ধাপগুলো অনুসরণ করব:

  • L1 := nums-এ 0 এবং পজিটিভ এলিমেন্টগুলোর তালিকা
  • L2 := nums-এ 0 এবং নেগেটিভ এলিমেন্টগুলোর তালিকা
  • L1 কে রিভার্স অর্ডারে সর্ট করুন
  • L2 তালিকাকে সর্ট করুন
  • L1-এ প্রতিটি i জন্য, করুন
    • L2-এ প্রতিটি j জন্য, করুন
      • यदि i+j, 0 के समान है, तो
        • i रिटर्न करें
      • अन्यथा जब i+j > 0, तो
        • वर्तमान लूप से बाहर निकलें
  • -1 रिटर्न करें

বेहतर বোঝার জন্য নিম্নলিখিত বাস্তবায়ন দেখুন:

উদাহরণ

class Solution:    def solve(self, nums):       L1=[i for i in nums if i>=0]       L2=[i for i in nums if i<=0]       L1.sort(reverse=True)       L2.sort()       for i in L1:          for j in L2:             if i+j==0:                return i             elif i+j>0:                break       return -1 ob = Solution() nums = [-5, 2, 9, -6, 5, -9] print(ob.solve(nums))

ইনপুট

[-5, 2, 9, -6, 5, -9]

আউটপুট

9

  1. পাইথনে নোড ডিলিট করে ফরেস্ট রিটার্ন করা

  2. পাইথনে পারমুটেশন ও কম্বিনেশন (Permutation and Combination in Python)

  3. পাইথনে =+ এবং += অপারেটরের পার্থক্য

  4. পাইথনে স্ট্রিং ইভ্যালুয়েট করে অবজেক্ট রিটার্ন কীভাবে করবেন?