250x250
반응형
Notice
Recent Posts
Recent Comments
Link
종식당
[프로그래머스 lv.1] 2021 카카오 채용연계형 인턴 숫자 문자열과 영단어 본문
728x90
반응형
이 문제를 처음 봤을 때 어렵지 않게 풀 수 있을 것 같았고 문자열 관련 문제를 많이 풀어본 점이 도움이 많이 된 것 같다. 일단 딕셔너리를 사용해야겠다는 생각이 먼저 들었다. 문자열 s안에서 영단어를 숫자로 바꾸어 출력해야 했기 때문에 s안에서의 영단어가 무엇인지를 알아내야 했다. 때문에 영단어를 딕셔너리의 key로 설정하고 이에 해당하는 숫자를 value로 설정해 주었다.
그 후 for문을 통해 영단어가 무엇인지 확인을 해야 했는데 이 for문을 s안에서 돌려야 할지 딕셔너리 안에서 돌려야 할지 고민을 했다. 먼저 dict.keys()를 사용해서 딕셔너리의 key안에서 for문을 돌리고 이때 key에 해당하는 영단어가 s에 있다면 이 단어를 key의 value값으로 replace를 이용해 바꿔주었다.
여기서 기억해야 할 점은 replace() 함수를 사용할 때는 첫 번째 인자가 기존에 있던 문자열, 두 번째 인자가 새롭게 바꿀 문자열 형태로 들어간다. 그리고 두 인자 모두 문자열로 작성해야 한다는 점을 꼭 기억하자!!!
그리고 반환할 때는 정수로 반환해야 해서 int()로 반환하였다.
- 제출 코드
def solution(s):
answer = 0
dict = {"zero":0, "one":1, "two":2, "three":3, "four":4, "five":5, "six":6, "seven":7, "eight":8, "nine":9}
for i in dict.keys():
if i in s:
s = s.replace(i,str(dict[i]))
return int(s)
카카오 문제라서 한번 풀어봤는데 생각보다 어렵지 않았고 lv1이라서 쉽게 생각할 수 있었던 것 같다. 이제 lv1문제들을 위주로 풀어보고 lv2도 한번 도전해 봐야겠다.
728x90
반응형
'프로그래머스' 카테고리의 다른 글
[프로그래머스 lv.1] 2021 Dev-Matching: 웹 백엔드 개발자(상반기) 로또의 최고 순위와 최저 순위 (0) | 2024.03.19 |
---|---|
[프로그래머스 lv.1] 2023 KAKAO BLIND RECRUITMENT 개인정보 수집 유효기간 (0) | 2024.03.19 |
[프로그래머스 lv.2] 탐욕법(Greedy) 구명보트 (4) | 2024.01.26 |
[프로그래머스 lv.1] 2019 카카오 개발자 겨울 인턴십 크레인 인형뽑기 게임 (0) | 2024.01.22 |
[프로그래머스 lv.1] 2018 kakao blind recruitment [1차] 비밀지도 (0) | 2024.01.18 |