알고리즘 공부

[2021 카카오 하계 인턴십 코딩테스트] 1번 숫자 문자열과 영단어 | Python3

유나쒸 2021. 7. 11. 20:52

1. 문제 해설 

  다음 입출력 예제와 같이 문자열로 표현된 수를 숫자로 바꿔 출력하는 문제이다.

  • “one4seveneight” → 1478 
  • “23four5six7” → 234567
  • “1zerotwozero3” → 10203  

2. 코드 

1
2
3
4
5
def solution(s):
    DicOfNum=['zero''one''two''three''four''five''six'
        'seven''eight''nine']
    for num, string in enumerate(DicOfNum): s=s.replace(string, str(num))
    return int(s)
cs

 

  1. 인덱스 0~9 에 맞춰 숫자 문자열 리스트를 초기화 한다.
  2. 주어진 입력에 대해 반복문과 enumerate, replace 함수를 사용하여 숫자문자열을 숫자로 대체한다. 
  3. int() 로 형변환 후 리턴