मान लीजिए कि हमारे पास एक बाइनरी मैट्रिक्स मैट है। हमें मैट्रिक्स में प्रत्येक पंक्ति का चयन करना होगा, फिर पंक्ति को उल्टा करना होगा। उसके बाद, प्रत्येक बिट (0 से 1 और 1 से 0) को पलटें।
तो, अगर इनपुट पसंद है
1 | 1 | 0 |
0 | 1 | 0 |
0 | 0 | 1 |
तो आउटपुट होगा
1 | 0 | 0 |
1 | 0 | 1 |
0 | 1 | 1 |
इसे हल करने के लिए, हम इन चरणों का पालन करेंगे -
- ट्रैक:=0
- चटाई में प्रत्येक पंक्ति के लिए, करें
- पंक्ति को उल्टा करें
- ट्रैकर:=0
- पंक्ति में प्रत्येक वैल के लिए, करें
- अगर वैल 1 है, तो
- चटाई[ट्रैक, ट्रैकर] :=0
- अन्यथा,
- चटाई[ट्रैक, ट्रैकर] :=1
- ट्रैकर:=ट्रैकर + 1
- अगर वैल 1 है, तो
- ट्रैक:=ट्रैक + 1
- वापसी चटाई
आइए बेहतर समझ पाने के लिए निम्नलिखित कार्यान्वयन देखें -
उदाहरण
class Solution: def solve(self, mat): track=0 for row in mat: row.reverse() tracker = 0 for val in row: if val == 1: mat[track][tracker] = 0 else: mat[track][tracker] = 1 tracker += 1 track += 1 return mat ob = Solution() mat = [[1,1,0],[0,1,0],[0,0,1]] print(ob.solve(mat))
इनपुट
[[1,1,0],[0,1,0],[0,0,1]]
आउटपुट
[[1, 0, 0], [1, 0, 1], [0, 1, 1]]