본문 바로가기

알고리즘

[알고리즘/Programmers] LV1. 가운데 글자 가져오기

728x90
반응형

Programmers LV1. 가운데 글자 가져오기

 

문제 설명

단어 s의 가운데 글자를 반환하는 함수, solution을 만들어 보세요. 단어의 길이가 짝수라면 가운데 두글자를 반환하면 됩니다.

 

제한 사항

  • s는 길이가 1 이상, 100이하인 스트링입니다.

 

입출력 예

s return
"abcde" "c"
"qwer" "we"

 

728x90

 

사용 언어

Java

 

해결 방법

substring 사용하기

 

알게된 것

  • subString의 정확한 사용법
    • subString(시작인덱스)
    • subString(시작인덱스, 끝인덱스)
      * 시작인덱스 부터 끝인덱스 전까지의 문자를 얻는다.

코드

public class test_12903 {
	/*
	 * 가운데 글자 가져오기
	 */
	public static void main(String[] args) {
		String s = "qwemrd";
		System.out.println(solution(s));
	}

	public static String solution(String s) {
		int length = s.length();
		int mid = s.length()/2;
		return length%2 == 0 ? s.substring(mid-1,mid+1) : s.substring(mid, mid+1);
	}

}

 


 

처음엔 subString의 인덱스 조건을 확실히 알지 않아서 한 문자는 안되는 줄 알고 홀수일 경우 charAt을 사용했다. 틀린건 아닌데 구지 그럴 필요 없이 위 코드 처럼 짜면 깔끔해졌다. subString의 인덱스 조건 은근 헷갈리니 주의하자.

728x90
반응형