[Python] SWEA - 1989 초심자의 회문 검사

Isabel·2022년 7월 17일
0

알고리즘 문제풀이

목록 보기
32/36

메모리..메모리...
testCase 문제번호 꼭 쓰기

SWEA1989 - 초심자의 회문 검사

T = int(input())
j = 0
sign = True
while j < T :
    word = input()
    word = word.replace(" ", "")
    arr = list(word)
    arr1 = []
    for i in range(len(arr)) : 
        arr1.insert(0, arr[i])
        
    for i in range(len(arr)) :
        if arr[i] == arr1[i] :
            sign = True
        else :
            sign = False
            break
    if sign == True :
        print(f'#{j+1} 1')
    else : 
        print(f'#{j+1} 0')
    j = j + 1

다른 사람의 문제 풀이를 보니

temp = '' 
for i in range( len(word)-1, -1, -1) :
	temp += word[i]

이런식으로 각 단어의 i번째 단어로 자를 수 있는 것 같다 .
range (n, m, p) 에서는 n번째부터 m번째 전까지 갭을 p만큼 두고 for문을 돌리는 것이다. 위에서는 word의 길이-1번째 즉 맨 마지막 글자부터 시작하여 -1미만, 즉 0번째 글자까지 for문을 돌 것이며 gap의 값이 -1이므로 for문을 돌릴 때 역순으로 돌리게 되는 것이다.

0개의 댓글