728x90
입력
첫 줄에 n, m이 주어진다.
두 번 째 줄부터 n개의 줄에 각 m개의 수가 주어진다.
(3 ≤ n, m ≤ 100, 1 ≤ 수열의 구성하는 수 ≤ n X m)
출력
n줄에 각 인덱스마다 인접한 인덱스에 같은 수가 있으면 1을, 없으면 0을 출력한다.
입력의 예 1
3 5
2 3 1 1 4
1 3 2 3 4
1 2 7 3 7
출력의 예 1
0 1 1 1 1
1 1 0 1 1
1 0 0 1 0
입력의 예 2
2 5
1 2 1 3 2
1 2 1 3 2
출력의 예 2
1 1 1 1 1
1 1 1 1 1
입력의 예 3
3 7
2 2 2 3 3 3 4
1 3 1 2 1 3 1
2 4 2 4 2 3 3
출력의 예 3
1 1 1 1 1 1 0
0 0 0 0 0 1 0
0 0 0 0 0 1 1
입력의 예 4
3 3
1 2 3
4 5 6
7 8 9
출력의 예 4
0 0 0
0 0 0
0 0 0
#코드
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
n, m = map(int, input().split())
frame = [list(map(int, input().split())) for _ in range(n)]
arr = [[-1 for _ in range(110)] for _ in range(110)]
for i in range(len(frame)):
for j in range(len(frame[i])):
arr[i+1][j+1] = frame[i][j]
for i in range(len(frame)):
for j in range(len(frame[i])):
# 상, 하, 좌, 우
if arr[i+1][j+1] == arr[i][j+1] or arr[i+1][j+1] == arr[i+2][j+1] or arr[i+1][j+1] == arr[i+1][j] or arr[i+1][j+1] == arr[i+1][j+2]:
frame[i][j] = 1
else:
frame[i][j] = 0
for i in range(len(frame)):
for j in range(len(frame[i])):
print(frame[i][j], end=' ')
print()
|
cs |
반응형
'CS > 알고리즘_문제풀이(파이썬)' 카테고리의 다른 글
스택 구현하기 (0) | 2021.05.24 |
---|---|
조회 알고리즘 (0) | 2021.05.23 |
1차원 조회 (0) | 2021.05.23 |
밀기 알고리즘 -- 파이썬 데크(deque) (0) | 2021.05.23 |
역방향 밀기 (0) | 2021.05.23 |