/ 제출 1 /
def solution(s):
if len(s) % 2 == 0:
return s[len(s)//2-1:len(s)//2+1]
else:
return s[len(s)//2]
채점 결과
정확성: 100.0
합계: 100.0 / 100.0
아니.. 이 간단한 구현에서도 짝수일 때 착각해서 인덱스 범위를 실수해 다시 고쳐 제출했습니다.
이 인덱스 값에 대해서는 다른 분들이 되게 다양하게 접근하셨던데 재밌어서 많이 살펴봤습니다.
다양한 사고를 할 수 있으면 분명 다른 문제에서도 아이디어를 떠올리기 쉬울테니까요.
/ 다른 분들 코드 /
def string_middle(str):
return str[(len(str)-1)//2:len(str)//2+1]
저는 짝수일 경우, 홀수일 경우를 나눠서 했는데 사실 그럴 필요도 없기는 했나봅니다. 인덱스 범위에서 동일 값을 min/max로 설정해도 이상 없이 나올 수 있었습니다.
def string_middle(str):
a = len(str)
if a % 2 == 0 :
a = (a-2) / 2
else :
a = (a-1) / 2
return str[int(a) : -int(a)]
왕.. 마지막 슬라이싱에서 max범위를 음수로 해서 뒤에서부터 접근하게 한 것도 저는 떠올리지 못한 생각입니다.
알고 있는 지식도 특정 문제에 떠올릴 수 있느냐에 따라서 활용도가 천차만별인 것 같습니다.
그리고 어떤 방법이 더 적절할 지에 대한 근거를 잘 말할 수 있어야할 것 같습니다.
'CodingTest > Programmers' 카테고리의 다른 글
[ 프로그래머스 ] 소수 찾기 (0) | 2022.06.23 |
---|---|
[ 프로그래머스 ] 나누어 떨어지는 숫자 배열 (0) | 2022.06.23 |
[ 프로그래머스 ] [1차]비밀지도 (0) | 2022.06.23 |
[ 프로그래머스 ] 부족한 금액 계산하기 (0) | 2022.06.23 |
[ 프로그래머스 ] 나머지가 1이 되는 수 찾기 (0) | 2022.06.23 |