반응형
https://programmers.co.kr/learn/courses/30/lessons/81301?language=python3
2021 카카오 채용연계형 인턴십
내 답안
def solution(s):
words = ['zero', 'one', 'two', 'three', 'four', 'five', 'six', 'seven', 'eight', 'nine']
x = ''
result = ''
for i in s:
if i.isalpha():
x += i
if x in words:
result += str(words.index(x))
x = ''
else:
result += i
return int(result)
입력받은 문자열 하나하나 체크를 해서 알파벳이면 하나하나 담아서 words의 있는 수면 워드를 수로 바꿔주는 코드를 작성하였다.
예시로 설명하면
s = "one4seveneight" 로 입력 받았으면,
x = 'o' --> 'on' --> 'one' 이렇게 될 것 이고,
x가 words 안에 존재하면 그에 맞는 위치 인덱스를 저장해서 result에 더해주는 식으로 코드를 짰다.
그럼 x는 초기화되고 result = '1' 이 된다.
같은 과정을 반복하면 답을 도출 해낼 수 있었다.
가장 좋아요를 많이 받은 풀이
num_dic = {"zero":"0", "one":"1", "two":"2", "three":"3", "four":"4",
"five":"5", "six":"6", "seven":"7", "eight":"8", "nine":"9"}
def solution(s):
answer = s
for key, value in num_dic.items():
answer = answer.replace(key, value)
return int(answer)
아직 정말 나는 많이 부족하다고 느낀다..
반응형
'프로그래머스' 카테고리의 다른 글
[프로그래머스] 올바른 괄호 파이썬 (0) | 2022.09.12 |
---|---|
[프로그래머스] 성격 유형 검사하기 파이썬 (0) | 2022.08.30 |
[프로그래머스] 소수 만들기 파이썬 (0) | 2022.02.21 |
[프로그래머스] 약수의 개수와 덧셈 파이썬 (0) | 2022.02.17 |
[프로그래머스] 신규 아이디 추천 파이썬 (0) | 2022.02.13 |