본문 바로가기
개발로그/알고리즘

프로그래머스 Lv.0 문자열 겹쳐쓰기

by 쩜징 2023. 7. 25.

프로그래머스 Lv.0 문자열 겹쳐쓰기


문자열 my_string, overwrite_string과 정수 s가 주어진다.

my_string의 인덱스 s부터 overwrite_string의 길이만큼 

바꾼 문자열을 return하라.

my_string overwrite_string s result
"He11oWor1d" "lloWorl" 2 "HelloWorld"
"Program29b8UYP" "merS123" 7 "ProgrammersS123"

 

** 풀이 방법

 

substring을 사용해

my_string의 0번 부터 s-1인덱스까지 담는다.

answer += my_string.substring(0, s);

 

그 다음 overwrite_string을 담는다.

answer += overwrite_string;

 

my_string.length()보다 answer.length()가 크다면

덮어쓰고도 my_string의 문자가 남아있는 것이므로

덮어쓰기 한 인덱스 시작+overwrite_string.length()의 

위치부터 끝까지 answer에 담는다.

if (my_string.length()-answer.length() > 0)
	answer += my_string.substring(s+overwrite_string.length());

 

<> 전체 코드 </>

class Solution {
    public String solution(String my_string, String overwrite_string, int s) {
        String answer = "";
        answer += my_string.substring(0,s);
        answer += overwrite_string;
        if (my_string.length()-answer.length() > 0)
            answer += my_string.substring(s+overwrite_string.length());
        return answer;
    }
}

 

 

반응형

댓글