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

পাইথনে সারি ও কলামের সর্বোচ্চ উপাদান দিয়ে মূল ম্যাট্রিক্স পুনর্গঠন করুন


সমস্যা বিবরণ

দুটি অ্যারে A (আকার N) এবং B (আকার M) এবং একটি N x M বাইনারি ম্যাট্রিক্স দেওয়া আছে যেখানে 1 মানে মূল ম্যাট্রিক্সে পজিটিভ ইন্টিজার ছিল এবং 0 মানে ০ ছিল। মূল ম্যাট্রিক্স পুনর্গঠন করতে হবে যাতে A[i] = i-তম সারির সর্বোচ্চ উপাদান এবং B[j] = j-তম কলামের সর্বোচ্চ উপাদান হয়।

উদাহরণস্বরূপ, A=[4,2,3], B=[3,1,0,0,4,0,5] এবং দেওয়া বাইনারি ম্যাট্রিক্স অনুযায়ী আউটপুট ম্যাট্রিক্স বানাতে হবে।

সমাধানের ধাপসমূহ

  1. N = len(A), M = len(B)।
  2. প্রতিটি সেল (i, j) এর জন্য:
    • যদি mat[i][j] == 1 হয়, প্রিন্ট করুন min(A[i], B[j])।
    • অন্যথায় প্রিন্ট করুন 0।

পাইথন কোড উদাহরণ

def print_original_mat(A, B, mat):
    N = len(A)
    M = len(B)
    for i in range(N):
        for j in range(M):
            if mat[i][j] == 1:
                print(min(A[i], B[j]), end=" ")
            else:
                print(0, end=" ")
        print()

A = [4, 2, 3]
B = [3, 1, 0, 0, 4, 0, 5]
mat = [
    [1, 0, 0, 0, 1, 0, 1],
    [0, 0, 1, 0, 0, 1, 1],
    [1, 1, 0, 1, 1, 0, 0]
]
print_original_mat(A, B, mat)
# আউটপুট:
# 3 0 0 0 4 0 4
# 0 0 0 0 0 0 2
# 3 1 0 0 3 0 0

ইনপুট

[4, 2, 3], [3, 1, 0, 0, 4, 0, 5], [[1, 0, 0, 0, 1, 0, 1], [0, 0, 1, 0, 0, 1, 1], [1, 1, 0, 1, 1, 0, 0]]

আউটপুট

3 0 0 0 4 0 4
0 0 0 0 0 0 2
3 1 0 0 3 0 0
  1. পাইথনে একটি বাইনারি ট্রিতে সবচেয়ে বড় কমপ্লিট সাবট্রি খুঁজুন

  2. পাইথনে বাইনারি ট্রি-র সর্বোচ্চ পারফেক্ট সাবট্রির আকার নির্ণয়

  3. পাইথন প্রোগ্রাম অ্যারেতে সবচেয়ে বড় এলিমেন্ট বের করা

  4. পাইথনে লিস্ট থেকে সর্বোচ্চ, সর্বনিম্ন, দ্বিতীয় সর্বোচ্চ ও দ্বিতীয় সর্বনিম্ন বের করা