취준생의 코딩테스트 연습기

[SWEA] 4861 [파이썬 S/W 문제해결 기본] 3일차 - 회문 / 파이썬(python) 본문

코딩테스트/SWEA

[SWEA] 4861 [파이썬 S/W 문제해결 기본] 3일차 - 회문 / 파이썬(python)

Jiwon_C 2021. 4. 6. 00:06

※ SW Expert 아카데미의 문제를 무단 복제하는 것을 금지합니다.

# 문제 링크

swexpertacademy.com/main/learn/course/subjectDetail.do?courseId=AVuPDN86AAXw5UW6&subjectId=AWOVGOEKqeoDFAWg

 

SW Expert Academy

SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!

swexpertacademy.com

# Soultion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
= int(input())
 
for tc in range(1,t+1):
    n,m= map(int,input().split())
    li = []
    for _ in range(n):
        li.append(input())
    for re in zip(*li):
        li.append(''.join(re))
        
    for a in li:
        for i in range(n-m+1):
            new_a = a[i:m+i]
            if new_a[:len(new_a)] == new_a[::-1]:
                print("#"+str(tc),new_a)
        break
cs
 

6. n줄의 문자열들을 li에 저장한다.

8. zip함수를 이용하여 행과열을 바꾼 문자열을 li에 저장한다.

13. 문자열에서 m개의 문자열을 뽑아서 비교

14. m개의 문자열이 자신의 역순과 똑같다면 출력

Comments