Koala - 9기/기초 알고리즘 스터디

[백준/python] 17502번 : 클레어와 팰린드롬

shlinn 2023. 1. 24. 17:59

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 을 통해 출력.