কম্পিউটার

পাইথনে একটি গ্রিডে স্কোয়ারের সংখ্যা খুঁজে বের করার প্রোগ্রাম


ধরুন আমাদের দুটি মান আছে p এবং q, আমাদেরকে অনন্য স্কোয়ারের সংখ্যা খুঁজে বের করতে হবে যা একটি গ্রিড থেকে তৈরি করা যেতে পারে p সারি এবং q কলাম যেখানে পয়েন্টগুলি সমানভাবে স্থাপন করা হয়েছে। উত্তরটি খুব বড় হলে রিটার্ন ফলাফল মোড 10^9 + 7। এই সমস্যায়, একটি বর্গ হল 4 পয়েন্টের একটি সেট যা একটি বর্গক্ষেত্রের চারটি শীর্ষবিন্দু তৈরি করে। বর্গক্ষেত্রের দিকগুলির দৈর্ঘ্য অবশ্যই একই হতে হবে এবং এটি সর্বদা গ্রিডের অক্ষগুলির সাথে সারিবদ্ধ হওয়ার প্রয়োজন নেই৷

সুতরাং, যদি ইনপুট হয় p =4, q =4, তাহলে আউটপুট হবে 20।

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

  • আমি ন্যূনতম r থেকে c, do,

    পরিসরে
    • ans :=ans +(r - i) *(c - i) * i

    • উত্তর দিন মোড (10^9 + 7)

উদাহরণ

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

class Solution:
   def solve(self, r, c):
      ans = 0
      for i in range(min(r, c)):
         ans += (r - i) * (c - i) * i
      return ans % (10 ** 9 + 7)
ob = Solution()
print(ob.solve(4,4))

ইনপুট

p = 4
q = 4

আউটপুট

20

  1. একটি গ্রিডে আলোকিত কোষের সংখ্যা খুঁজে বের করার জন্য C++ প্রোগ্রাম

  2. পাইথনের প্রত্যেকের দ্বারা গ্রাফটি অতিক্রম করা যায় কিনা তা খুঁজে বের করার প্রোগ্রাম

  3. পাইথনের গোডাউনে কয়টি বাক্স রাখতে হবে তা বের করার কর্মসূচি

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