1. 문제 설명
문자열 my_string, overwrite_string과 정수 s가 주어집니다.
문자열 my_string의 인덱스 s부터 overwrite_string의 길이만큼을 문자열 overwrite_string으로
바꾼 문자열을 return 하는 solution 함수를 작성해 주세요.
2. 제안사항
my_string와 overwrite_string은 숫자와 알파벳으로 이루어져 있습니다.
1 ≤ overwrite_string의 길이 ≤ my_string의 길이 ≤ 1,000
0 ≤ s ≤ my_string의 길이 - overwrite_string의 길이
3. 입출력 예
my_string overwrite_string s result
"Program29b8UYP" "merS123" 7 "ProgrammerS123"
"myname1sm1so" "ismiso" 6 "mynameismiso"
기본적으로 solution 함수가 작성되어져 있어서 이를 토대로 코드를 짜보았다!
이때 my_string의 인덱스 s부터 overwrite_string의 길이만큼 문자열을 바꿔줘야 하기 때문에 'strncpy' 함수를 사용했다!
여기서 잠깐
strncpy가 무엇인지부터 잠깐 보고가자!
strncpy란?
C 언어에서 문자열을 일부분만 복사하기 위해 사용되는 함수이며
사용 시, <string.h> 헤더 파일에 정의해준다.
따라서 . . .
overwrite_string의 길이를 나타내는 정수를 만들어준 후,
strncpy를 사용하여 my_string의 s번지부터 overwrite_string의 길이만큼 overwrite_string을 복사해준다.
그 다음 main에서 출력하고자 하는 문자들을 출력한다!
🖥️ 오늘의 개발 일지
이 문제를 풀려고 2시간동안이나 발악을 했다
근데 여기저기서 찾아보니깐 strncpy함수를 사용하면 된다는 것이다..
이렇게 간단한 방법을 놔두고 for문을 돌리고 있었다니..!!!
그래도 이번 문제를 풀면서 strncpy란 함수를 알아가서 더 의미가 있었던 것 같다.
다음에 이와 비슷한 문제가 출제된다면 Strncpy 함수를 적절히 적용하여 오늘 배운 개념들을 응용해봐야겠다.
'코딩 테스트' 카테고리의 다른 글
[ 프로그래머스 ] 특정한 문자를 대문자로 바꾸기 (0) | 2024.01.17 |
---|---|
[ 프로그래머스 ] 문자열 섞기 (0) | 2024.01.13 |
[ 프로그래머스 ] 더 크게 합치기 (0) | 2024.01.13 |
[ 프로그래머스 ] 9로 나눈 나머지 (1) | 2024.01.13 |
[구름 IDE] 큰 팩토리얼 구하기 (2) | 2024.01.03 |