🥻 [문제]
NxN 크기의 글자판에서 길이가 M인 회문을 찾아 출력하는 프로그램을 만드시오.
[input]
3
10 10
GOFFAKWFSM
OYECRSLDLQ
UJAJQVSYYC
JAEZNNZEAJ
WJAKCGSGCF
QKUDGATDQL
OKGPFPYRKQ
TDCXBMQTIO
UNADRPNETZ
ZATWDEKDQF
10 10
WPMACSIBIK
STWASDCOBQ
AMOUENCSOG
XTIIGBLRCZ
WXVSWXYYVU
CJVAHRZZEM
NDIEBIIMTX
UOOGPQCBIW
OWWATKUEUY
FTMERSSANL
20 13
ECFQBKSYBBOSZQSFBXKI
VBOAIDLYEXYMNGLLIOPP
AIZMTVJBZAWSJEIGAKWB
CABLQKMRFNBINNZSOGNT
NQLMHYUMBOCSZWIOBINM
QJZQPSOMNQELBPLVXNRN
RHMDWPBHDAMWROUFTPYH
FNERUGIFZNLJSSATGFHF
TUIAXPMHFKDLQLNYQBPW
OPIRADJURRDLTDKZGOGA
JHYXHBQTLMMHOOOHMMLT
XXCNJGTXXKUCVOUYNXZR
RMWTQQFHZUIGCJBASNOX
CVODFKWMJSGMFTCSLLWO
EJISQCXLNQHEIXXZSGKG
KGVFJLNNBTVXJLFXPOZA
YUNDJDSSOPRVSLLHGKGZ
OZVTWRYWRFIAIPEYRFFG
ERAPUWPSHHKSWCTBAPXR
FIKQJTQDYLGMMWMEGRUZ
[output]
#1 JAEZNNZEAJ
#2 MWOIVVIOWM
#3 TLMMHOOOHMMLT
import sys, pprint
sys.stdin = open("input.txt")
T = int(input())
for i in range(T):
n,m = map(int,input().split())
arr = []
for i in range(n):
arr.append(list(input()))
for i in range(n):
for j in range(n-m+1):
ga_arr = arr[i][j:j+m] #가로
se_arr = [arr[x][i] for x in range(j,(j+m))]
if ga_arr == ga_arr[::-1] :
hwe=ga_arr
elif se_arr == se_arr[::-1]:
hwe=se_arr
print('#'+str(i+1),end=' ')
for j in hwe:
print(j,end='')
print()
🍦 [복습]
# 1. 210218
# 2. 210225
문제를 스스로 풀 수 있는게 몇 없다보니 다른사람들의 코드를 많이 참고하게 되는데,
다른사람들의 코드를 해석하는데만 해도 시간이 꽤 걸린다
ㅠㅠ..... 어렵다
안되면 그냥 외워버리자
'# 3. APS > SWEA' 카테고리의 다른 글
SWEA # Python_D2_1961_숫자 배열 회전 (0) | 2021.02.25 |
---|---|
SWEA # Python_D2_2005_파스칼의 삼각형 (0) | 2021.02.25 |
SWEA # Python_D2_4836_색칠하기 ✅ (0) | 2021.02.20 |
SWEA # Python_D2_2007_패턴 마디의 길이 ✅ (0) | 2021.02.20 |
SWEA # Python_D2_1989_초심자의 회문 검사 ✅ (0) | 2021.02.20 |