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

পাইথনে লার্জেস্ট পেরিমিটার ট্রায়্যাঙ্গেল

মান লেই আমাদের একটি অ্যারে A আছে পজিটিভ দৈর্ঘ্যের সাথে, আমাদের ৩টি দৈর্ঘ্য ব্যবহার করে নন-জিরো এরিয়ায় একটি ট্রায়্যাঙ্গেলের লার্জেস্ট পেরিমিটার বের করতে হবে। যদি কোনো ট্রায়্যাঙ্গেল তৈরি করা নাও যায় তবে ০ রিটার্ন করবে।

সেজন্য, যদি ইনপুট হয় [3,6,2,3], তবে আউটপুট হবে ৮।

এটি সমাধান করার জন্য আমরা নিচের ধাপগুলো অনুসরণ করব −

  • লিস্ট A সর্ট করুন
  • a := A-এর শেষ এলিমেন্ট ডিলিট করুন
  • b := A-এর শেষ এলিমেন্ট ডিলিট করুন
  • c := A-এর শেষ এলিমেন্ট ডিলিট করুন
  • যখন b+c <= a, লুপ চালান
    • যদি A খালি হয়, তবে
      • 0 রিটার্ন
    • a := b
    • b := c
    • c := A-এর শেষ এলিমেন্ট ডিলিট
  • a+b+c রিটার্ন

বেস্টার বোঝার জন্য নিচের ইম্প্লিমেন্টেশন দেখুন −

উদাহরণ

class Solution:
    def largestPerimeter(self, A):
        A.sort()
        a, b, c = A.pop(), A.pop(), A.pop()
        while b + c <= a:
            if not A:
                return 0
            a, b, c = b, c, A.pop()
        return a + b + c

ob = Solution()
print(ob.largestPerimeter([3,6,2,3]))

ইনপুট

[3,6,2,3]

আউটপুট

8
  1. সি++-এ ত্রিভুজের পেরিমিটার (Perimeter) বের করা

  2. পাইথনে পলিগনের পরিসীমা বের করার প্রোগ্রাম

  3. পাইথনে সর্বোচ্চ ত্রিভুজের এলিয়া (Largest Triangle Area) নির্ণয়

  4. পাইথনে হিস্টোগ্রামে সবচেয়ে বড় আয়ত