반응형
https://www.acmicpc.net/problem/1259
✔ 알고리즘
- 구현
- 문자열
✔ 접근방법
1. 특정 문자가 나올 때까지 반복 하므로 while문 사용
2. 첫번째 인덱스, 마지막 인덱스를 시작으로 인덱스를 1씩 이동해주며 비교
인덱스가 같아지거나(인덱스가 홀수개), 역순으로 바뀌면(인덱스가 짝수개) yes로 검사 종료
3. 계속 런타임 에러가 나서 봤더니 논리연산자를 | 를 쓴 것이 문제
💡 논리연산자는 and / or 로 써줘야 함 (|, & 는 파이참에서는 에러는 안 나지만 구문 에러인 것은 맞는듯 함)
✔ 코드
num_list=[]
while(1):
n = input()
if(n =='0'):
break
num_list.append(n)
for s in num_list:
start = 0
end = len(s) - 1
while(1):
if(s[start]!=s[end]):
print("no")
break
start +=1
end -= 1
if(start>=end): #같은 인덱스이거나 인덱스가 역순으로 바뀌면 검사 완료
print("yes")
break
✔ 배운점/아쉬운점
1. 슬라이싱을 통해 더 간단하게 구현 가능
for i in num_list:
if(i == i[::-1]):
print("yes")
else:
print("no")
2. 논리연산자는 and / or 로 써줘야 함 (|, & 는 파이참에서는 에러는 안 나지만 구문 에러인 것은 맞는듯 함)
반응형
'알고리즘 > 백준(BOJ) 문제 풀이' 카테고리의 다른 글
[Python]백준 #11866 요세푸스 문제 0 (0) | 2022.07.04 |
---|---|
[Python]백준 #1018 체스판 다시 칠하기 (0) | 2022.07.03 |
[Python]백준 #11050 이항계수1(class2+) (0) | 2022.03.12 |
[Python]백준 #10814 나이순 정렬(class2+) (0) | 2022.03.12 |
[Python]백준 #10250 ACM호텔(class2+) (0) | 2022.03.12 |