কম্পিউটার

পাইথনে একটি প্রদত্ত ম্যাট্রিক্সে 1s এর বৃহত্তম বর্গক্ষেত্রের ক্ষেত্রফল বের করার প্রোগ্রাম


ধরুন আমাদের একটি বাইনারি ম্যাট্রিক্স আছে, আমাদের সেই প্রদত্ত ম্যাট্রিক্সে 1s এর বৃহত্তম বর্গ বের করতে হবে।

সুতরাং, যদি ইনপুট মত হয়

1
0
0
0
0
1
1
0
0
0
0
0
1
1
0
1
1
1
1
0
0
0
1
1
1
1
0
0
0
1
1
1
1
0
0
0
1
1
1
1
0
0

তাহলে আউটপুট হবে 16।

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

  • res :=0
  • আমি 0 থেকে ম্যাট্রিক্সের আকারের মধ্যে,
      করুন
    • res :=সর্বাধিক রেস এবং ম্যাট্রিক্স[i, 0]
  • আমি 0 থেকে ম্যাট্রিক্সের মাপ[0] এর মধ্যে,
      করুন
    • res :=সর্বাধিক রেস এবং ম্যাট্রিক্স[0, i]
  • আমি রেঞ্জ 1 থেকে ম্যাট্রিক্সের সারি গণনার জন্য, কর
    • j এর জন্য রেঞ্জ 1 থেকে ম্যাট্রিক্সের কলাম কাউন্ট, করুন
      • যদি ম্যাট্রিক্স[i, j] 1 এর মত হয়, তাহলে
        • ম্যাট্রিক্স[i, j] =সর্বনিম্ন (ম্যাট্রিক্স[i - 1, j], ম্যাট্রিক্স[i - 1, j - 1] এবং ম্যাট্রিক্স[i, j - 1]) + 1
      • res =সর্বাধিক রেস এবং ম্যাট্রিক্স[i, j]
  • রিটার্ন ^2

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

উদাহরণ

শ্রেণির সমাধান:def solve(self, matrix):res =0 for i in range(len(matrix)):res =max(res, matrix[i][0]) in range(len(matrix) এর জন্য [0])):res =max(res, matrix[0][i]) in range(1, len(matrix)) এর জন্য:j এর জন্য রেঞ্জ(1, len(matrix[0])):যদি ম্যাট্রিক্স[i][j] ==1:ম্যাট্রিক্স[i][j] =মিনিট(ম্যাট্রিক্স[i - 1][j], ম্যাট্রিক্স[i - 1][j - 1], ম্যাট্রিক্স[i][j - 1]) + 1 res =max(res, matrix[i][j]) রিটার্ন res * resob =Solution()matrix =[ [ [1, 0, 0, 0, 0, 1, 1], [0, 0 , 0, 0, 0, 1, 1], [0, 1, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 0, 0], [0, 1, 1 , 1, 1, 0, 0], [0, 1, 1, 1, 1, 0, 0]]মুদ্রণ(ob.solve(matrix))

ইনপুট

<প্রি>ম্যাট্রিক্স =[ [ [1, 0, 0, 0, 0, 1, 1], [0, 0, 0, 0, 0, 1, 1], [0, 1, 1, 1, 1, 0 , 0], [0, 1, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 0, 0], [0, 1, 1, 1, 1, 0, 0] ]

আউটপুট

16

  1. জাভা প্রোগ্রাম স্কোয়ারের এলাকা খুঁজে বের করতে

  2. পাইথনে বহুভুজের এলাকা খুঁজে বের করার জন্য প্রোগ্রাম

  3. পাইথনে হিস্টোগ্রামের অধীনে বৃহত্তম আয়তক্ষেত্র এলাকা খুঁজে বের করার প্রোগ্রাম

  4. একটি ম্যাট্রিক্সের স্থানান্তর খুঁজে পেতে পাইথন প্রোগ্রাম