코딩라이브러리/파이썬

파이썬 문자열 거꾸로 해보기 (with 백준 1251 6438)

유니네 라이브러리 2024. 5. 19. 16:48

문자열 거꾸로 하는 방법은 3가지가 있다.

  1. 문자열 슬라이싱으로 처리하기
  2. 문자열을 리스트로 변환하고 reverse() 함수 사용하기
  3. sorted(iterable, reverse=True) 내장함수 사용하기.
    리스트로 반환된다
#1.문자열 슬라이싱으로 처리
var = "abcde"
print(f"문자열뒤집기: {var[::-1]}") #edcba

#2.문자열을 리스트로 변환하고 reverse() 함수 사용하기
#리스트인 경우 reverse() 함수 제공되므로 리스트 변환 후 사용
lst = list(var)
print(f"뒤집기 전: {lst}") #뒤집기 전: ['a', 'b', 'c', 'd', 'e']
#리스트일때는 reverse() 함수 사용
lst.reverse()
print(f"뒤집기 후: {lst}") #뒤집기 후: ['e', 'd', 'c', 'b', 'a']
#문자열 변환
str = "".join(lst)
print(f"문자열변환: {str}") #문자열변환: edcba

#3.sorted() 내장함수 사용하기. 리스트로 반환.
srt = sorted(var, reverse=True)
print(f"sorted 사용: {srt}") #sorted 사용: ['e', 'd', 'c', 'b', 'a']
srts = "".join(srt)
print(f"sorted 문자열변환: {srts}") #sorted 문자열변환: edcba

 

▶ 문자열 reverse (거꾸로) 연습 백준 문제 풀이

https://www.acmicpc.net/problem/6438

#input 에는 여러 테스트 케이스가 들어 있습니다. 
#첫 번째 줄에는 파일의 테스트 사례 수를 지정하는 정수가 들어 있습니다. 
#각 테스트 사례는 최대 70자를 포함하는 단일 텍스트 줄로 구성됩니다. 
#그러나 각 줄의 끝에 있는 줄바꿈 문자는 줄의 일부로 간주되지 않습니다.

#테스트 사례 수 지정 정수 입력
no = int(input())
#최대 70자를 포함하는 단일 텍스트 줄 입력
lst = [input() for _ in range(0, no)]
#문제풀이, 주어진 텍스트의 방향을 변경
for i in range(0, len(lst)):
    str = lst[i]
    print(str[::-1]) #문자열 슬라이싱으로 처리

 

▶ 문자열 슬라이싱 연습 백준 문제 풀이

https://www.acmicpc.net/problem/1251

"""
단어 : arrested
세 단어로 나누기 : ar / rest / ed
각각 뒤집기 : ra / tser / de
합치기 : ratserde
단어가 주어지면, 이렇게 만들 수 있는 단어 중에서 사전순으로 가장 앞서는 단어를 출력하는 프로그램을 작성
"""
#입력값 저장
inp = input()
#출력값 변수 선언
rtnList = []
#입력 데이터만큼 반복
for i in range(1, len(inp)-1):
    for j in range(i+1, len(inp)):
        fStr = inp[:i]
        sStr = inp[i:j]
        tStr = inp[j:]
        #거꾸로 저장한다.
        rtnList.append(fStr[::-1]+sStr[::-1]+tStr[::-1])
print(min(rtnList))

 

▷ 파이썬 자습서 참고 사이트

 

array — Efficient arrays of numeric values

This module defines an object type which can compactly represent an array of basic values: characters, integers, floating point numbers. Arrays are sequence types and behave very much like lists, e...

docs.python.org

 

 

Built-in Functions

The Python interpreter has a number of functions and types built into it that are always available. They are listed here in alphabetical order.,,,, Built-in Functions,,, A, abs(), aiter(), all(), a...

docs.python.org