কম্পিউটার

পাইথনে কয়েন ম্যাট্রিক্স অদৃশ্য হয়ে যাওয়া থেকে আমরা পেতে পারি সর্বাধিক কয়েন খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের একটি 2D ম্যাট্রিক্স আছে যেখানে প্রতিটি সেল ম্যাট্রিক্স[r, c] সেই ঘরে উপস্থিত কয়েনের সংখ্যাকে প্রতিনিধিত্ব করে। যখন আমরা ম্যাট্রিক্স[r, c] থেকে কয়েন তুলব, তখন সারির সমস্ত কয়েন (r - 1) এবং (r + 1) অদৃশ্য হয়ে যাবে, সেইসাথে ম্যাট্রিক্স[r, c + 1] এবং দুটি কক্ষের কয়েনগুলি অদৃশ্য হয়ে যাবে। ম্যাট্রিক্স[r, c - 1]। আমরা সর্বোচ্চ কয়েন সংগ্রহ করতে পারি তা খুঁজে বের করতে হবে।

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

2 8 7 6
10 10 4 2
5 9 2 3

তাহলে আউটপুট হবে 26 কারণ আমরা কয়েন 8, 6, এবং 9 এবং 3 দিয়ে সেল বাছাই করতে পারি, তাই মোট হল 26।

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

  • একটি ফাংশন সংজ্ঞায়িত করুন getmax()। এটি arr
  • লাগবে
  • prev_max :=0
  • curr_max :=0
  • res :=0
  • আরের প্রতিটি সংখ্যার জন্য, করুন
    • তাপ :=curr_max
    • curr_max :=num + prev_max
    • prev_max :=temp এর সর্বোচ্চ এবং prev_max
    • res :=res এর সর্বোচ্চ এবং curr_max
  • রিটার্ন রিটার্ন
  • প্রধান পদ্ধতি থেকে নিম্নলিখিতগুলি করুন -
  • যদি ম্যাট্রিক্স খালি হয়, তাহলে
    • রিটার্ন 0
  • m :=ম্যাট্রিক্সের সারি গণনা
  • n :=ম্যাট্রিক্সের কলাম গণনা
  • row_sum :=m আকারের একটি অ্যারে এবং 0 দিয়ে পূরণ করুন
  • আমি 0 থেকে m - 1 রেঞ্জের জন্য, কর
    • row_sum[i] :=getmax(matrix[i])
  • রিটার্ন getmax(row_sum)

উদাহরণ

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

def getmax(arr):prev_max, curr_max =0, 0 res =0 সংখ্যার জন্য arr:temp =curr_max curr_max =num + prev_max prev_max =max(temp, prev_max) res =max(res, curr_max) রিটার্ন resdef সমাধান (ম্যাট্রিক্স):ম্যাট্রিক্স না হলে:0 মি, n =লেন(ম্যাট্রিক্স), লেন(ম্যাট্রিক্স[0]) row_sum =[0 এর জন্য _ রেঞ্জ(m)] এর জন্য i রেঞ্জ(m):row_sum[i ] =getmax(matrix[i]) getmax(row_sum)matrix =[ [ [2, 8, 7, 6], [10, 10, 4, 2], [5, 9, 2, 3]]মুদ্রণ(সমাধান করুন) (ম্যাট্রিক্স))

ইনপুট

<প্রে>[[2, 8, 7, 6],[10, 10, 4, 2],[5, 9, 2, 3]]

আউটপুট

26

  1. পাইথনে একাধিক কপি নেওয়ার মাধ্যমে আমরা ন্যাপস্যাক সমস্যায় পেতে পারি সর্বাধিক মান খুঁজে বের করার জন্য প্রোগ্রাম

  2. পাইথনে আমরা সর্বাধিক সংখ্যক কয়েন সংগ্রহ করতে পারি তা খুঁজে বের করার প্রোগ্রাম

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

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