링크
백준 2804 크로스워드 만들기
행과 열을 헷갈리지 않고 찬찬히 하면 쉽게 풀수 있는 문제이다.
여러번 나오는 글자 중엔 제일 처음 나오는 것을 선택해야 하므로 탐색을 하다 찾으면 break로 탐색을 멈춘다.
A, B = input().split()
N, M = len(A), len(B) #열, 행
puzzle = [['.'] * N for _ in range(M)]
for i in range(N):
flag = False
for j in range(M):
if A[i] == B[j]:
row = j
col = i
flag = True
break
if flag == True:
break
for i in range(N):
puzzle[row][i] = A[i]
for i in range(M):
puzzle[i][col] = B[i]
for i in range(M):
print(''.join(puzzle[i]))