코딩테스트/프로그래머스

[프로그래머스] 기초 문제 | 문자열 겹쳐쓰기

Jio_ni 2025. 5. 29. 23:58

https://school.programmers.co.kr/learn/courses/30/lessons/181943

 

프로그래머스

SW개발자를 위한 평가, 교육의 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프

programmers.co.kr

프로그래머스에서 학습용으로 문제를 가져왔습니다. 문제가 될 시 수정, 삭제하도록 하겠습니다.


문제 설명

문자열 my_string, overwrite_string과 정수 s가 주어집니다. 문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로 바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.


제한사항

  • my_stringoverwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
  • 1 ≤ overwrite_string 의 길이 ≤ my_string의 길이 ≤ 1,000
  • 0 ≤ s ≤ my_string 의 길이 - overwrite_string 의 길이

입출력 예

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

입출력 예 #1

예제 1번의 my_string 에서 인덱스 2부터 overwrite_string 의 길이만큼에 해당하는 부분은 "11oWorl1"이고 이를 "lloWorl"로 바꾼 "HelloWorld"를 return합니다.


입출력 예 #2

예제 2번의 my_string 에서 인덱스 7부터 overwrite_string 의 길이만큼에 해당하는 부분은 "29b8UYP"이고 이를 "merS123"로 바꾼 "ProgrammerS123"를 return합니다.


내 풀이

def solution(my_string, overwrite_string, s):
    answer = my_string[:s] + overwrite_string + my_string[s + len(overwrite_string):]
    return answer

참고

문자열 슬라이싱을 이용하면 된다.

문자열 슬라이싱은 [시작 값 : 끝 값 + 1] 로서 사용된다.


결과

 

반응형