मान लीजिए कि हमारे पास एक मैट्रिक्स एम है, हमें यह जांचना है कि यह टोप्लिट्ज मैट्रिक्स है या नहीं। जैसा कि हम जानते हैं कि एक मैट्रिक्स को Toeplitz कहा जाता है, जब बाएं से दाएं उतरने वाले प्रत्येक विकर्ण का मान समान होता है।
तो, अगर इनपुट पसंद है
7 | 2 | 6 |
3 | 7 | 2 |
5 | 3 | 7 |
तो आउटपुट ट्रू होगा।
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- पिछले एक को छोड़कर प्रत्येक पंक्ति के लिए, करते हैं
- आखिरी कॉलम को छोड़कर हर कॉलम के लिए करें
- यदि मैट्रिक्स [i, j] मैट्रिक्स के समान नहीं है [i+1, j+1], तो
- झूठी वापसी
- यदि मैट्रिक्स [i, j] मैट्रिक्स के समान नहीं है [i+1, j+1], तो
- आखिरी कॉलम को छोड़कर हर कॉलम के लिए करें
- सही लौटें
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, matrix): for i in range(len(matrix)-1): for j in range(len(matrix[0])-1): if matrix[i][j]!=matrix[i+1][j+1]: return False return True ob = Solution() matrix = [ [7, 2, 6], [3, 7, 2], [5, 3, 7]] print(ob.solve(matrix))
इनपुट
[[7, 2, 6], [3, 7, 2], [5, 3, 7]]
आउटपुट
True