CODING TEST/PROGRAMMERS

[코딩테스트 입문] Python 15일차 (영어가 싫어요, 인덱스 바꾸기, 한 번만 등장한 문자, 약수 구하기)

개발자 만두 2024. 1. 9. 15:47
728x90
반응형

모든 문제는 Python으로 풀이했습니다 ❕

오늘의 문제 4개는 아래와 같습니다 ⤵️

오늘의 문제 4개

 

1. 영어가 싫어요

🔗 문제 링크

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

 

⌨️ 작성한 코드 (Python)

def solution(numbers):
    numbers_dict = {"zero": '0', "one": '1', "two": '2', "three": '3', "four": '4', "five": '5', "six": '6', "seven": '7', "eight": '8', "nine": '9'}
    
    for word, digit in numbers_dict.items():
        numbers = numbers.replace(word, digit)
    
    return int(numbers)

 

2. 인덱스 바꾸기

🔗 문제 링크

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

 

⌨️ 작성한 코드 (Python)

def solution(my_string, num1, num2):
    my_string = list(my_string)
    my_string[num1], my_string[num2] = my_string[num2], my_string[num1]
    
    return ''.join(my_string)

 

3. 한 번만 등장한 문자

🔗 문제 링크

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

 

⌨️ 작성한 코드 (Python)

def solution(s):
    str_list = list(s)
    str_list.sort()
    
    return ''.join([x for x in str_list if str_list.count(x) == 1])

 

4. 약수 구하기

🔗 문제 링크

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

 

⌨️ 작성한 코드 (Python)

def solution(n):
    return [x for x in range(1, n+1) if n % x == 0]


코드에 대해 이해 안 가거나

궁금한 내용이 있으신 분은 댓글 남겨주세요!

감사합니다 🤓

 

 

728x90
반응형