Coding Test

특정 문자 제거하기

honey-vision 2024. 7. 17. 11:21

문제 설명


문자열 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