<문제>
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
<풀이>
def solution(s):
if len(s) %2 == 0:
return s[(len(s)-1)//2:((len(s)-1)//2)+2]
else:
return s[len(s)//2]
<다른 풀이>
방법 1.
def solution(s):
if len(s) %2 == 0:
a = int(len(s)/2)-1
b = int(len(s)/2)+1
return s[a:b]
else:
c = int(len(s)/2)
return s[c]
방법 2.
def solution(s):
a = len(s)
if a % 2 == 0 :
a = (a-2) / 2
else :
a = (a-1) / 2
return s[int(a) : -int(a)]
<느낀점>
파이썬은 수학을 잘하면 유리할 것 같다. 꼼수를 잘 쓰는게 더 좋은건가? 파이썬 문제를 풀다 보면, 어느새 수학문제를 간편하게 푸는 방법에 대해 고뇌하고 있다. 요즘 나는~ 뇌에 주름이 생기는 기분을 느끼고 있다~