쉽지않은 블로그
2021 KAKAO INTERNSHIP [숫자문자열과 영단어] [python] 본문
https://programmers.co.kr/learn/courses/30/lessons/81301
코딩테스트 연습 - 숫자 문자열과 영단어
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자
programmers.co.kr
문제 요약
숫자와 (0~9까지의 ) 영단어( ex | "zero" , "one"....)가 섞여있는 상태의 문자열로 주어질 경우
이를 숫자로 반환하여라
ex|. "03fiveseven8" => 03578
나의 풀이
C++ 보다는 문자열 처리에 편리한 javascript , python을 사용하고 replace와 같은 내장 함수를 사용했다.
길이가 50보다 작고 생성된 숫자는 2^32 보다 작으므로
시간 복잡도는 전혀 고려하지 않아도 되고 4바이트 integer 타입도 괜찮다.
소스코드
from functools import reduce
digit={'zero':'0','one':'1','two':'2','three':'3','four':'4','five':'5','six':'6','seven':'7','eight':'8','nine':'9'}
def solution(s):
return int(reduce(lambda ans,d:ans.replace(d,digit[d]),digit.keys(),s))
'알고리즘문제풀이 > 프로그래머스' 카테고리의 다른 글
2021 KAKAO INTERNSHIP [표 편집] [C++] (0) | 2021.07.10 |
---|---|
2021 KAKAO INTERNSHIP [거리두기 확인하기] [C++] (0) | 2021.07.10 |
2021 KAKAO BLIND RECRUITMENT [매출 하락 최소화] [C++] (0) | 2021.02.23 |
2021 KAKAO BLIND RECRUITMENT [카드 짝 맞추기] [C++] (1) | 2021.02.23 |
2021 KAKO BLIND RECRUITMENT [광고 삽입] [C++] (0) | 2021.02.23 |
Comments