문제 출처
링크 클릭시 맥의 경우 command, 윈도우의 경우 ctrl을 누르면서 클릭하면 새창에서 링크오픈이 가능합니다.
테스트 케이스를 모두 통과하지 못함(2019.08.13)
# 회문인지, 유사회문인지, 둘다 아닌지 확인하는 함수. 각각 0, 1, 2로 출력한다.
def isPalindrome(Str):
# 회문인 경우
if Str == Str[::-1]:
return 0
# 회문이 아닌 경우
else:
count = 0
for i in range(len(Str)):
NewStr = Str[:i]+Str[i+1:]
if NewStr == NewStr[::-1]:
count += 1
# count가 증가했다면 유사회문이 있었다는 것이므로 1을 리턴
if count > 0:
return 1
# count가 증가하지 않았다면 유사회문이 없었다는 것이므로 2를 리턴
else:
return 2
# 초기 입력 횟수
num = int(input())
for i in range(num):
UserInput = input()
print(isPalindrome(UserInput))
문제
- 테스트케이스 14번부터 (timeout)으로 인해 통과가 되지 못함
- 시간 제한 2초, 메모리 제한 512MB를 넘은 것이 문제같다.. 이를 어떻게 해결해야할지
- 파이썬은 기본적으로 다른 언어에 비해 메모리를 크게 신경쓰는 언어는 아니라고 들었는데 어떻게 메모리 관리를 해야할지 모르겠다.
해결
# 해결방법 아직 고민하는 중
반응형
'알고리즘 > 기타 사이트 알고리즘' 카테고리의 다른 글
2019 카카오 개발자 겨울 인턴십 크레인 인형뽑기 게임 (0) | 2020.08.27 |
---|---|
2018 KAKAO BLIND 비밀지도 문제 (0) | 2020.08.26 |
프로젝트 오일러 02번 문제_피보나치 수열 (0) | 2020.08.23 |
하노이의 탑(Tower of Hanoi) (0) | 2020.05.10 |
[구름에듀_데일리알고리즘] KOI_2019 막대기 (0) | 2019.08.12 |