배고픈 개발자 이야기
832. Flipping an image (feat.PYTHON) 본문
832. Flipping an Image
Easy
Given a binary matrix A, we want to flip the image horizontally, then invert it, and return the resulting image.
To flip an image horizontally means that each row of the image is reversed. For example, flipping [1, 1, 0] horizontally results in [0, 1, 1].
To invert an image means that each 0 is replaced by 1, and each 1 is replaced by 0. For example, inverting [0, 1, 1] results in [1, 0, 0].
Example 1:
Input: [[1,1,0],[1,0,1],[0,0,0]]
Output: [[1,0,0],[0,1,0],[1,1,1]]
Explanation: First reverse each row: [[0,1,1],[1,0,1],[0,0,0]].
Then, invert the image: [[1,0,0],[0,1,0],[1,1,1]]
Example 2:
Input: [[1,1,0,0],[1,0,0,1],[0,1,1,1],[1,0,1,0]]
Output: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]
Explanation: First reverse each row: [[0,0,1,1],[1,0,0,1],[1,1,1,0],[0,1,0,1]].
Then invert the image: [[1,1,0,0],[0,1,1,0],[0,0,0,1],[1,0,1,0]]
Notes:
- 1 <= A.length = A[0].length <= 20
- 0 <= A[i][j] <= 1
풀이:
2차원 배열로 저장되어있는 IMAGE의 값들을 위의 예시와 같이 역순으로 뒤집고 0과 1을 inverse해주는 문제입니다.
class Solution(object):
def flipAndInvertImage(self, A):
B = A
for i, x in enumerate(B):
B[i] = x[::-1]
for j, y in enumerate(x):
if y: B[i][j] = 0
else: B[i][j] = 1
return B
위와 같이 입력 배열을 역순으로 뒤집고 루프안에서 조건문을 활용하여 0과 1을 역변환 시켜줍니다.
'알고리즘 문제 > LEETCODE' 카테고리의 다른 글
[Python] MaximumDepthofBinaryTree (0) | 2021.05.06 |
---|---|
[Python] ClimbingStairs (0) | 2021.05.06 |
1009. Complement of Base 10 Integer (feat.PYTHON) (0) | 2019.09.01 |
771. Jewels and Stones (feat.PYTHON) (0) | 2019.09.01 |
65. Valid Number (feat. PYTHON) (0) | 2019.09.01 |