কম্পিউটার

পাইথনে প্রত্যেকের অন্তত একজন বন্ধু আছে কি না তা পরীক্ষা করার জন্য প্রোগ্রাম


ধরুন আমাদের 0 থেকে n - 1 পর্যন্ত একটি সংখ্যা হিসাবে প্রতিনিধিত্ব করা n লোক রয়েছে, আমাদের কাছে বন্ধুর টিপলের একটি তালিকাও রয়েছে, যেখানে বন্ধু[i][0] এবং বন্ধু[i][1] বন্ধু। আমাদের প্রত্যেকের অন্তত একজন বন্ধু আছে কিনা তা পরীক্ষা করতে হবে।

সুতরাং, যদি ইনপুটটি n =3 বন্ধু =[ [0, 1], [1, 2] ] এর মত হয়, তবে আউটপুটটি True হবে, যেহেতু ব্যক্তি 0 ব্যক্তি 1 এর বন্ধু, ব্যক্তি 1 ব্যক্তি 0 এর বন্ধু এবং 2, এবং ব্যক্তি 2 হল ব্যক্তি 1 এর বন্ধু।

এটি সমাধান করতে, আমরা এই পদক্ষেপগুলি অনুসরণ করব -

  • লোক :=n আকারের একটি তালিকা, 0 দিয়ে পূর্ণ
  • বন্ধুদের প্রতিটি লিঙ্কের জন্য, করুন
    • মানুষ[লিঙ্ক[0]] :=সত্য
    • মানুষ[লিঙ্ক[1]] :=সত্য
  • মানুষের প্রতিটি ব্যক্তির জন্য, করুন
    • যদি ব্যক্তি খালি হয়, তাহলে
      • মিথ্যে ফেরত দিন
  • সত্য ফেরান

আরো ভালোভাবে বোঝার জন্য আসুন নিচের বাস্তবায়ন দেখি -

উদাহরণ

class Solution:
   def solve(self, n, friends):
      people = [0 for i in range(n)]
      for link in friends:
         people[link[0]] = True
         people[link[1]] = True
      for person in people:
         if not person:
            return False
      return True
ob = Solution()
n = 3
friends = [ [0, 1], [1, 2] ]
print(ob.solve(n, friends))

ইনপুট

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

আউটপুট

True

  1. প্রদত্ত গাছটি পাইথনে সিমেট্রিক ট্রি কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  2. পাইথনে একটি গাছ অন্য গাছের সাবট্রি কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  3. প্রদত্ত গ্রাফটি পাইথনে দ্বিপক্ষীয় কি না তা পরীক্ষা করার জন্য প্রোগ্রাম

  4. একটি মান বিএসটি-তে আছে কিনা পাইথনে নেই তা পরীক্ষা করার জন্য প্রোগ্রাম