https://www.acmicpc.net/problem/17502
17502번: 클레어와 팰린드롬
입력으로 주어진 문자열을 팰린드롬이 되도록 '?' 문자들을 적절한 알파벳 소문자들로 바꾸어 출력합니다. 방법이 여러 가지인 경우 그 중 하나만 출력합니다.
www.acmicpc.net
문제 코드
문제 풀이
a를 받아 먼저 a의 길이가 홀수인지 확인, 홀수인 경우 가운데 문자는 상대되는 짝이 없으므로, 이것이 "?" 라면 이것을 다른 문자로 바꾸어 줌.
다음으로 for 문을 통해 문장 a를 반복. 만약 a[i] 가 "?" 라면, 그에 상대되는 a[-i-1] 도 "?" 인지 확인. 둘 다 "?" 라면 이 둘을 동일한 다른 문자로 바꾸어줌. 만약 a[-i-1] 이 "?" 가 아니라면, a[i] 를 a[-i-1] 로 바꾸어줌.
만약 a[i] 가 "?" 가 아니라면, a[-1-i] 를 a[i] 로 바꾸어 줌.
이 후 a=list 이므로 join 을 통해 출력.
'Koala - 9기 > 기초 알고리즘 스터디' 카테고리의 다른 글
[백준/python] 2309 일곱 난쟁이 (1) | 2023.01.26 |
---|---|
[백준/python] 2596번 : 비밀편지 (0) | 2023.01.25 |
[백준 / python] #11652 카드 (0) | 2023.01.24 |
[python/파이썬] 백준 baekjoon 2828 사과 담기 게임 (0) | 2023.01.23 |
[백준/python] 1302 베스트셀러 (0) | 2023.01.22 |