Computer language and framework/GO
[GO] 프로그래머스 > 코딩 테스트 입문 > LV.0 문자열 겹쳐쓰기
WhiteGoblin
2024. 10. 22. 21:52
반응형
문제 설명
문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.
제한사항
- my_string와 overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
- 1 ≤ overwrite_string의 길이 ≤ my_string의 길이 ≤ 1,000
- 0 ≤ s ≤ my_string의 길이 - overwrite_string의 길이
사고 회로
1. 시작 되는 index 전까지는 기존의 char 를 입력한다.
2. range 를 통해 string 인 my_string 을 rune 으로 분해 한다.
3. 이후 시작 되는 index 열 부터는 하나씩 resultString 에 추가하고 count 를 1 증가 시킨다.
4. 이후 남은 문자를 추가 한다.
func solution(my_string string, overwrite_string string, s int) string {
resultString := ""
overwriteStringCount := 0
for i , v := range my_string{
if i < s {
resultString += string(v)
} else if i >= s && i < len(overwrite_string) + s {
resultString += string(overwrite_string[overwriteStringCount])
overwriteStringCount++
} else {
resultString += string(v)
}
}
return resultString
}
주요 개념?
* string, rune
반응형