Gaegul's devlog
[Algorithm 풀이] 완전탐색: 행렬 뒤집기 본문
728x90
반응형
1) 입력 / 출력
1
1 1 1 1 1 1 1 1 1 1
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
1 0 0 0 0 0 0 0 0 0
2) 입력 / 출력
3
1 0 0 1 1 1 1 1 1 1
0 1 0 1 1 1 1 1 1 1
0 0 1 1 1 1 1 1 1 1
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
1 1 1 0 0 0 0 0 0 0
## template
n = int(input())
arr = [[0] * (10) for _ in range(10)]
#행 탐색
for i in range(n):
for j in range(10):
if arr[i][j] == 0:
arr[i][j] = 1
else:
arr[i][j] = 0
arr[i][i] = 1
#열 탐색
for i in range(10):
for j in range(n):
if i == j : # 겹치는 부분 처리
arr[j][j] = 1
continue
elif arr[i][j] == 0 :
arr[i][j] = 1
else:
arr[i][j] = 0
#출력
for i in range(len(arr)) :
for j in range(len(arr)) :
print(arr[i][j], end=' ')
print()
SOLUTION
1) 행 탐색하면서 0 이면 1, 1이면 0 그리고 열 탐색하면서 0이면 1, 1이면 0 채우기
2) 행 채우고 열 채울때 겹치는 부분은 처리 안하는게 포인트
if i == j : # 겹치는 부분 처리
arr[j][j] = 1
continue
728x90
반응형
'Algorithm > Algorithm 풀이' 카테고리의 다른 글
[Algorithm 풀이] 재귀 함수 : division (0) | 2022.10.04 |
---|---|
[Algorithm 풀이] 재귀 함수 : 순열구하기 (1) | 2022.10.04 |
[Algorithm 풀이] 완전탐색: ColorPaper (0) | 2022.09.24 |
[프로그래머스] 문자열 압축 (0) | 2022.04.29 |
[SWEA] 1215. 회문1 (0) | 2021.08.21 |
Comments