TIL 월요일 정기회의 1회차 - list.reverse, string 슬라이싱 [::-1], sys.stdin.readline

전유진·2025년 3월 31일

팰린드롬 문제

나의 풀이

def solution(word):
    l = len(word)
    flag = 1

    for i in range(l//2): #중복되니까 반만 돌림
        if word[i] != word[l-i-1]:
            flag = 0
            break

    return flag
    
word = input()
print(solution(word))

다른 사람 풀이

문자열 슬라이싱

word = input()
print(int(word == word[::-1]))
  • [start : end : step]

week = [0,1,2,3,4]
week[::2] 는? [0, 2, 4]이다!
week[:]에서 step만 2로 바꾼 의미임

list.reverse()

word = list(input())
wordRv = list(reversed(word))

if word == wordRv:
    print("1")
else:
    print("0")
  • reversed(list) = 원본이 안바뀐다.
  • list.reverse() = 원본이 바뀐다.

실전 꿀팁

import sys
input = sys.stdin.readline
word = input().strip()
  • 시간복잡도가 놀랍게 빨라짐!
  • 코테에서 안풀리는 게 풀리기도 하는 Magic
profile
배움을 좋아하는 사람입니다. 이곳에 배움의 기록을 남기려고 합니다.

0개의 댓글