문제 설명
단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.
제한사항
- s는 길이가 1 이상, 100이하인 스트링입니다.
문제풀이
- 만약 s의 길이를 2로 나눈 나머지가 0이라면 짝수라는 뜻이므로 가운데 두글자를 슬라이스해서 리턴한다
- else의 경우는 홀수인 경우이므로 2로 나눈 정수 값(s의 가운데 값)을 리턴한다.
- 삼항 연산자를 사용해서 한줄로 표현한다.
- 포인트 👉 // 연산자를 사용하면 round를 사용하지 않더라도 나눈 값의 정수 값을 얻을 수 있다.
def solution(s):
return s[len(s)//2-1:len(s)//2+1] if len(s)%2 == 0 else s[len(s)//2]
다른 풀이
def solution(s):
return s[(len(s)-1)//2:len(s)//2+1]
내 경우에는 짝수의 경우와 홀수의 경우를 따로 나눠서 짝수는 가운데 두글자를 리턴하고 홀수는 한글자를 리턴한다는 것을 법칙으로 삼아서 코드를 짰는데, 이 경우는 단순히 슬라이스로 짝수의 경우에는 두글자가 홀수의 경우에는 한글자가 출력되도록 했다.
예를들어 4를 넣는다면 s[1:3]가 될 것이고 3을 넣는다면 s[1:2]이 되어 각각 두글자, 한글자씩 출력될 것이므로 다른 코드지만 결과는 같다.