मान लीजिए हमारे पास p और q दो मान हैं, हमें p पंक्तियों और q स्तंभों वाले ग्रिड से उत्पन्न किए जा सकने वाले अद्वितीय वर्गों की संख्या ज्ञात करनी है जिसमें बिंदु समान रूप से रखे गए हैं। यदि उत्तर बहुत बड़ा है तो परिणाम को 10^9 + 7 से मोड करें। इस समस्या में, एक वर्ग 4 बिंदुओं का एक समूह है जो एक वर्ग के चार शीर्ष बनाते हैं। वर्ग की भुजाओं की लंबाई समान होनी चाहिए, और इसे हमेशा ग्रिड के अक्षों के साथ संरेखित होने की आवश्यकता नहीं है।
इसलिए, यदि इनपुट p = 4, q = 4 जैसा है, तो आउटपुट 20 होगा।
हल करने के चरण
i के लिए min(r, c) तक की रेंज में, करें
ans := ans + (r - i) * (c - i) * i
ans mod (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