ধরুন আমাদের ধনাত্মক দৈর্ঘ্যের একটি অ্যারে A আছে, আমাদেরকে শূন্য ক্ষেত্রবিহীন ত্রিভুজের বৃহত্তম পরিধি খুঁজে বের করতে হবে, এই দৈর্ঘ্যের 3টি থেকে গঠিত। যখন অ-শূন্য ক্ষেত্রফলের কোনো ত্রিভুজ গঠন করা অসম্ভব, তখন 0 ফেরত দিন।
সুতরাং, ইনপুট যদি [3,6,2,3] এর মত হয়, তাহলে আউটপুট হবে 8।
এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -
- তালিকা A সাজান
- a :=A থেকে শেষ উপাদান মুছুন
- b :=A থেকে শেষ উপাদান মুছুন
- c :=A থেকে শেষ উপাদান মুছুন
- যখন b+c <=a, do
- যদি A অ-শূন্য হয়, তাহলে
- রিটার্ন 0
- a :=b
- b :=c
- c :=A থেকে শেষ উপাদান মুছুন
- যদি 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