Notice
Recent Posts
Recent Comments
Tags
- 알고리즘 문제
- Django
- 백준 다이나믹프로그래밍
- 스프링 기초
- 코테 연습
- 코테
- 백준 선수과목 python
- 프로그래머스
- 백준 14567
- 스프링 초보
- 장고 기초
- programmers
- 코딩테스트 연습
- 백준 선수과목 14567
- 백준 선수과목 파이썬
- 장고
- 백준
- 백준 14567 파이썬
- 프로그래머스 레벨1
- 프로그래머스 level1
- Django 기초
- 백준 선수과목
- Spring 초보
- dp 알고리즘
- 알고리즘 공부
- spring 기초
- 코딩테스트
- 백준 dp
- 위상정렬 파이썬
- 백준 14567 python
Archives
- Today
- Total
일일구름 IT
프로그래머스 lv.1 [숫자 문자열과 영단어] 2021 카카오 채용연계형 인턴십 본문
문제 설명
네오와 프로도가 숫자놀이를 하고 있습니다. 네오가 프로도에게 숫자를 건넬 때 일부 자릿수를 영단어로 바꾼 카드를 건네주면 프로도는 원래 숫자를 찾는 게임입니다.다음은 숫자의 일부 자릿수를 영단어로 바꾸는 예시입니다.
- 1478 → "one4seveneight"
- 234567 → "23four5six7"
- 10203 → "1zerotwozero3"
내 푼제 풀이:
def solution(s):
answer = []
num = ["zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"]
while not s.isdigit():
for i in num:
if i in s:
s = s.replace(i, str(num.index(i)))
answer = s
return answer
- num 리스트 index를 이용하여 영어 단어를 숫자로 바꾸었습니다.
- s.indigit()는 s에 숫자만 있을 경우 Ture를 반환 → 숫자만 남을 경우 while 종료
다른 사람 문제 풀이:
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)
- 딕셔너리를 사용하여 num 정의
- .item()을 이용하면 딕셔너리의 key, value 반환 가능
- .replace(key, value) → key값을 value값으로 바꿈, 영어 단어를 숫자로 바꿈
https://www.notion.so/5bc953efee3f43c99085f22fee2ac0b0
'프로그래머스 > 프로그래머스 lv.1' 카테고리의 다른 글
프로그래머스 lv.1 [크레인 인형 뽑기] 2019 카카오 개발자 겨울 인턴십 게임 (0) | 2022.07.06 |
---|---|
프로그래머스 lv.1 [키패드 누르기] 2020 카카오 인턴십 (0) | 2022.07.06 |
프로그래머스 lv.1 [신규 아이디 추천] 2021 KAKAO BLIND RECRUITMENT (0) | 2022.07.05 |
프로그래머스 lv.1 [로또의 최고 순위와 최저 순위] 2021 Dev-Matching: 웹 백엔드 개발자 (0) | 2022.07.05 |
프로그래머스 lv.1 [신고 결과 받기] 2022 KAKAO BLIND RECRUITMENT (0) | 2022.07.05 |