💡문제 풀이/프로그래머스 - JAVA

문자열 겹쳐쓰기 / 181943

뇌 리셋은 기본이지 2024. 1. 5. 17:21

정보

분류 : -

 

문제

문제링크

 

풀이

class Solution {
    public String solution(String my_string, String overwrite_string, int s) {
        String answer = my_string.substring(0,s) + overwrite_string;
		
		// 입력한 문자길이가 출력할 문자길이보다 크면?
		if(my_string.length() > answer.length()) {
			/*
			 *  출력할 문자길이를 시작점으로 입력한 문자열에서 문자를 자르고
			 *  자른 문자를 출력할 문자열에 추가한다.
			 */
			answer += my_string.substring(answer.length());
		}
		
        return answer;
    }
}

 

풀이 내용

예시로 He11oWor1d로 들어보겠다.

  • He
    • 첫번째로는 substring을 사용하여 my_string을 문자열 중 0번째부터 s의 값만큼 잘라서 문자를 추출해주었다.
  • HelloWorl
    • 두번째로는 조건문을 넣어주었다. 조건문이 나오지 않으면 출력값이 HelloWorl일 것이다. 그렇기 때문에 입력한 값(my_string)이 출력할 값(answer)보다 문자열 길이가 크면 추가적으로 작업해야하는 내용을 기재해보았다.
  • d
    • 마지막으로 answer의 문자를 완성시키는 일만 남았다. my_srting의 문자열(He11oWor1d)에서 answer(9)의 문자길이부터 잘라 answer에 붙혀넣기하라는 로직을 짜보았다.