문제 설명
문자열 my_string과 문자 letter이 매개변수로 주어집니다. my_string에서 letter를 제거한 문자열을 return하도록 solution 함수를 완성해주세요.
C언어
for문으로 my_string 문자열을 순회하면서 주어지는 letter 문자열과 같지 않은 문자만 answer에 복사한다.
같으면 복사하지 않고 넘어간다.
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
#include <string.h>
char* solution(const char* my_string, const char* letter) {
size_t len = strlen(my_string);
char* answer = (char*)malloc(len + 1);
int idx = 0;
for (size_t i = 0; i < len; ++i) {
if (my_string[i] != *letter) {
answer[idx++] = my_string[i];
}
}
answer[idx] = '\0';
return answer;
}
파이썬
my_string 문자열에서 replace 함수를 통해 괄호 안에 있는 조건을 적용한다.
(letter, '') 주어지는 letter 문자열을 '' 아무것도 없도록 바꾼다.
그래서 어느 문자열이 주어져고 아무것도 없음 즉, 빈 값으로 대체되기 때문에 지워지는 결과를 나타낼 수 있다.
전체 코드는 다음과 같다.
def solution(my_string, letter):
return my_string.replace(letter, '')
'Coding Test' 카테고리의 다른 글
| 배열 원소의 길이 (0) | 2024.07.19 |
|---|---|
| 배열 뒤집기 (0) | 2024.07.18 |
| 문자열안에 문자열 (0) | 2024.07.16 |
| 최댓값 만들기 (2) (0) | 2024.07.15 |
| 최댓값 만들기(1) (0) | 2024.07.14 |