728x90
728x90
문제
"level" 과 같이 거꾸로 읽어도 제대로 읽은 것과 같은 문장이나 낱말을 회문(回文, palindrome)이라 한다.
단어를 입력 받아 회문이면 1을 출력하고, 아니라면 0을 출력하는 프로그램을 작성하라.
제약 사항
각 단어의 길이는 3 이상 10 이하이다.
입력
가장 첫 줄에는 테스트 케이스의 개수 T가 주어지고, 그 아래로 각 테스트 케이스가 주어진다.
각 테스트 케이스의 첫 번째 줄에 하나의 단어가 주어진다.
출력
출력의 각 줄은 '#t'로 시작하고, 공백을 한 칸 둔 다음 정답을 출력한다.
(t는 테스트 케이스의 번호를 의미하며 1부터 시작한다.)
예제
[입력] | [출력] |
3 level samsung eye |
#1 1 #2 0 #3 1 |
문제 해결 방법
- 팰린드롬(회문) 알고리즘을 알면 쉽게 풀 수 있었던 문제였다.
코드
T = int(input())
for test_case in range(1, 1 + T):
S = str(input())
answer = 1
for idx in range(len(S)): # 정방향
if S[idx] != S[len(S) - idx - 1]:
answer = 0
break
print(f"#{test_case} {answer}")
참고
- 난이도: D2
728x90
728x90
'Problem Solving > SWEA' 카테고리의 다른 글
[SWEA-1970][Python] 쉬운 거스름돈 (0) | 2023.10.16 |
---|---|
[SWEA-1974][Python] 스도쿠 검증 (0) | 2023.10.16 |
[SWEA-1979][Python] 어디에 단어가 들어갈 수 있을까 (1) | 2023.10.14 |
[SWEA-1983][Python] 조교의 성적 매기기 (0) | 2023.10.12 |
[SWEA-2001][Python] 파리 퇴치 (0) | 2023.10.12 |
[SWEA-2005][Python] 파스칼의 삼각형 (0) | 2023.10.12 |
[SWEA-2007][Python] 패턴 마디의 길이 (0) | 2023.10.11 |
[SWEA-1859][Python] 백만 장자 프로젝트 (1) | 2023.10.10 |