मान लीजिए हमारे पास एक बाइनरी मैट्रिक्स A है, जो एक इमेज का प्रतिनिधित्व करता है। हम इमेज को क्षैतिज रूप से फ्लिप करना चाहते हैं, फिर उसे इनवर्ट करना चाहते हैं, और अंत में परिणामी इमेज वापस करना चाहते हैं। क्षैतिज रूप से फ्लिप करने का अर्थ है इमेज की प्रत्येक पंक्ति को उलट देना। इनवर्ट करने का अर्थ है प्रत्येक 0 को 1 से और प्रत्येक 1 को 0 से बदल देना।
उदाहरण के लिए, यदि इनपुट है:
| 1 | 1 | 0 |
| 1 | 0 | 1 |
| 0 | 0 | 0 |
तो आउटपुट होगा:
| 1 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 1 | 1 |
हल करने के चरण
- result := एक नई सूची
- A में प्रत्येक पंक्ति i के लिए:
- Reverse := पंक्ति i को उलटें
- j को 0 से Reverse के आकार तक लूप करें:
- यदि Reverse[j] 1 के बराबर है, तो Reverse[j] := 0
- अन्यथा, Reverse[j] := 1
- Reverse को result के अंत में जोड़ें
- result वापस करें
उदाहरण
class Solution:
def flipAndInvertImage(self, A):
result = []
for i in A:
Reverse = i[::-1]
for j in range(len(Reverse)):
if Reverse[j] == 1:
Reverse[j] = 0
else:
Reverse[j] = 1
result.append(Reverse)
return result
ob = Solution()
print(ob.flipAndInvertImage([[1,1,0],[1,0,1],[0,0,0]]))
इनपुट
[[1,1,0],[1,0,1],[0,0,0]]
आउटपुट
[[1, 0, 0], [0, 1, 0], [1, 1, 1]]