Python으로 구현한 4522번 세상의 모든 팰린드롬 문제 풀이입니다.
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AWO6Oao6N4QDFAWw
for tc in range(int(input())) :
data = list(input())
result = ''
if data == data[::-1] :
result = 'Exist'
else :
for i in range(len(data)) :
if data[i] == '?' :
data[i] = data[len(data) - (i + 1)]
if data == data[::-1] :
result = 'Exist'
else :
result = 'Not exist'
print('#%d %s' % (tc + 1, result))
1. 각 테스트 케이스마다 입력받은 data 문자열과 뒤집은 문자열이 같다면 result에 'Exist' 문자열을 할당한다.
2. 두 문자열이 다르다면 data 문자열의 문자를 하나씩 확인하고, 해당 문자가 '?' 일 경우 data[len(data) - (i + 1)] 문자를 해당 인덱스에 할당한다.
3. 이후 만약 현재의 data 문자열과 뒤집은 문자열이 같다면 result에 'Exist' 문자열을 할당하고, 다르다면 'Not exist' 문자열을 할당한다.
4. 최종적으로 해당 테스트 케이스 번호와 함께 result 문자열을 출력한다.
'SWEA(Python) 풀이 > D3' 카테고리의 다른 글
SWEA[D3] (Python) 4406번 모음이 보이지 않는 사람 풀이 (0) | 2022.05.23 |
---|---|
SWEA[D3] (Python) 4466번 최대 성적표 만들기 풀이 (0) | 2022.05.23 |
SWEA[D3] (Python) 4579번 세상의 모든 팰린드롬 2 풀이 (0) | 2022.05.23 |
SWEA[D3] (Python) 4615번 재미있는 오셀로 게임 풀이 (0) | 2022.05.23 |
SWEA[D3] (Python) 4676번 늘어지는 소리 만들기 풀이 (0) | 2022.05.23 |