728x90
https://programmers.co.kr/learn/courses/30/lessons/81301
코딩테스트 연습 - 숫자 문자열과 영단어
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다. 다음은 숫자의 일부 자
programmers.co.kr
eng_num_dict = {'one':1, 'two':2, 'three':3, 'four':4, 'five':5,
'six':6, 'seven':7, 'eight':8, 'nine':9, 'zero':0}
num = [0,1,2,3,4,5,6,7,8,9]
def solution(s):
tmp = ''
answer = ''
for letter in s:
if letter not in str(num):
tmp += letter
if tmp in eng_num_dict:
answer += str(eng_num_dict[tmp])
tmp = ''
else:
answer += str(letter)
return int(answer)
내가 기억하기로는 처음에는 하나하나 if문으로 처리했는데, 이제는 dict로 쉽게 처리 가능하다.
부족한 점
- 문자 하나하나 확인하기보다는 regular expression 이나 문자열 자체로 해도 코드가 더 보기 좋았을 것 같다
'Python > CoTe' 카테고리의 다른 글
[programmers] 완주하지 못한 선수 (0) | 2022.02.19 |
---|---|
[programmers] 내적 (0) | 2022.02.19 |
[programmers] 포켓몬 (0) | 2022.02.19 |
[DFS] 감시 피하기 (0) | 2021.12.03 |
[Implementation] 럭키 스트레이트 (0) | 2021.12.02 |