알고리즘

1254-백준-팰린드롬 만들기

2023. 2. 9. 23:11
목차
  1. 1. 문제 출처
  2. 2. 풀이
  3.  

1. 문제 출처

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

 

1254번: 팰린드롬 만들기

동호와 규완이는 212호에서 문자열에 대해 공부하고 있다. 규완이는 팰린드롬을 엄청나게 좋아한다. 팰린드롬이란 앞에서부터 읽으나 뒤에서부터 읽으나 같게 읽히는 문자열을 말한다. 동호는

www.acmicpc.net

2. 풀이

파이썬의 slice 기능을 이용하면 간단하게 해결할 수 있다.

 

s = input()
# 전체 문자열을 역순으로 한 것과 문자열이 일치하면 이미 팰린드롬 문자열 이므로
# 문자열의 길이를 출력한다.
if s == s[::-1]:
    print(len(s))
# 아닌 경우
else:
	# 최악의 경우의 수는 마지막 문자를 기준으로 앞뒤를 같게 하는 경우 이므로
    # 최대 문자열의 전체 길이 빼기 1 만큼 반복해준다.
    for n in range(len(s)-1):
        # 파이썬 리스트에서 인덱스를 음수로 사용할 수 있는데 이 경우
        # [-N....-3,-2,-1] 와 같이 된다.
    	# s[n-len(s)::-1] 와 같이 쓰면 n-len(s) 부터 -len(s) 까지의 값을 가지고 온다.
        temp = s+s[n-len(s)::-1] 
        # 전체 문자열을 역순으로 한 것과 문자열이 일치하면 팰린드롬 문자열 이므로
        # 문자열의 길이를 출력한다.
        if temp == temp[::-1]:
            print(len(temp))
            break

 

'알고리즘' 카테고리의 다른 글

1439-백준-뒤집기  (0) 2023.02.13
2618- 백준 - 경찰차  (0) 2023.02.10
9996-백준-한국이 그리울 땐 서버에 접속하지  (0) 2023.02.08
9536-백준-여우는 어떻게 울지?  (0) 2023.02.06
백준-1141-접두사  (0) 2023.02.04
  • 1. 문제 출처
  • 2. 풀이
  •  
'알고리즘' 카테고리의 다른 글
  • 1439-백준-뒤집기
  • 2618- 백준 - 경찰차
  • 9996-백준-한국이 그리울 땐 서버에 접속하지
  • 9536-백준-여우는 어떻게 울지?
easysheep
easysheep
easysheep
나의 개발자 일기
easysheep
전체
오늘
어제
  • 분류 전체보기 (95)
    • 파이썬 (7)
      • 자료형 (0)
      • matplotlib (2)
      • Tensorflow (1)
      • Selenium (1)
      • Numpy (2)
      • Pandas (1)
    • 장난감 프로젝트 (3)
    • AI_수학 (0)
      • 통계 (0)
    • 알고리즘 (63)
      • 브루트 포스 (3)
      • 그리드 알고리즘 (5)
      • 너비 우선 탐색(bfs) (12)
      • 깊이 우선 탐색(DFS) (1)
      • 최단 경로 구하기(플로이드 워셜) (1)
      • 동적 계획법(Dynamic Programming) (8)
      • Dijkstra algorithm(데이크스트라 알.. (6)
    • Backend (1)
      • Django (1)
    • 딥러닝 (1)
      • Regression(회귀) (0)
    • 머신러닝 (3)
      • Daycon (1)
      • 직접 구현 (1)
    • AWS (3)
    • DB (2)
      • MongoDB (2)
    • kubernetes (3)
    • Docker (4)
    • Stress Test Toll (0)
      • Jmeter (0)
      • nGrinder (0)
    • Ubuntu (3)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 알고리즘
  • Docker
  • Python
  • gradio
  • heap
  • error
  • helm
  • Numpy
  • Cannot stat file /proc/528/fd/0: Permission denied
  • 머신 러닝
  • 우분투에 헬름 설치
  • grafana
  • dynamic programming
  • validate service connection
  • ML
  • Mac
  • error: version in "./docker-compose.yaml" is unsupported.
  • 파이썬
  • BFS
  • 문자열
  • Bind Mounts
  • 백준
  • 데이크스트라
  • 헬름 설치
  • 2*n 타일링
  • aws
  • matplotlib
  • mysql
  • ubuntu
  • 너비 우선 탐색

최근 댓글

최근 글

hELLO · Designed By 정상우.
easysheep
1254-백준-팰린드롬 만들기
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.