less than 1 minute read


Input-1
abced
Output-1
c

Input-2
abcd
Output-2
bc


문제 풀이

주어진 문자열의 길이가 홀수냐 짝수냐에 따라 검증방식을 다르게 접근해야 한다.

홀수일 경우

  • 가운데 문자를 반환한다.
  • 문자열을 순회하며 주어진 문자열의 길이를 반으로 나눈 수와 같은 수를 찾으면 된다.

짝수일 경우

  • 가운데 2개의 문자를 반환한다.
  • 문자열을 반으로 나눈 수의 인덱스와 인덱스+1의 수를 찾으면 된다.


작성 코드

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
import java.util.*;
class Solution {
    public String solution(String s) {
        String answer = "";
        if(s.length()%2 == 0) {
            for(int i=(s.length()/2)-1; i<=(s.length()/2); i++) {
                answer += s.charAt(i);
            }
        }
        else {
            for(int i=0; i<s.length(); i++) {
                if(i == Math.round(s.length()/2)) answer += s.charAt(i);
            }
        }
        return answer;
    }
}

회고

  • 무작정 풀이를 위한 코드보다 간결하게 작성할 수 있는지도 함께 고려할 수 있는 능력을 길러야 함을 느꼈다.