오늘 한 일
- Cake 일일퀴즈
- 프로그래머스 그리디 큰 수 만들기 복습
간단정리
Cake 일일 퀴즈
배달 음식 시켜먹을 때 2탄
I'd like to order for delivery, please. (배달 주문하려고요.)
The rest was a delivery fee. (나머지는 배달비였어.)
What do you want? (넌 뭐 먹고 싶어?)
We ordered takeaway lunches. (저희는 점심을 포장 주문했어요.)
That's everything. (그게 다에요.)
Our food has arrived. (음식이 도착했어요.)
프로그래머스 그리디 큰 수 만들기
문제출처 : https://programmers.co.kr/learn/courses/30/lessons/42883
number 에서 k 개의 수를 제거해서 가장 큰 값을 구하는 문제이다.
앞에서부터 작은 수를 제거하면 가장 큰 수가 나온다.
number 의 수를 stack 에 담고 각각의 수와 stack 의 마지막 수를 비교해서 더 큰 값을 남기면 된다.
list 를 string 으로 변환할 때는 ''.join(list_object) 를 사용하였다.
def solution(number, k):
# k 의 개수만큼 숫자를 제거해야함
# 숫자를 차례대로 리스트에 저장하고 더 큰 값이 나오면 제거해준다
number_stack = []
for i in number:
while True:
if len(number_stack) > 0 and k > 0 and number_stack[-1] < i:
number_stack.pop()
k -= 1
else:
break
number_stack.append(i)
# k 가 0보다 큰 경우 number_stack 의 맨 뒤에서 하나씩 빼준다.
while k > 0:
number_stack.pop()
k -= 1
return ''.join(number_stack)
느낀점
- Cake 는 하루 10분 ~ 15분정도 소요되고 TIL 을 작성할 때 한 번 더 복습할 수 있어서 좋은듯하다.
- 영어실력이 느는 느낌이 딱히 없지만 돌파하는 때가 오지 않을까 생각한다.
- 프로그래머스 복습을 하면 생각이 다시 나는 듯 하다.
- 일일 루틴처럼 알고리즘 관련 영상이던 문제던 리뷰해야 감을 잃지 않을 듯 하다.
반응형
'TIL' 카테고리의 다른 글
[TIL] 2021.09.24 (0) | 2021.09.24 |
---|---|
[TIL] 2021.09.23 (0) | 2021.09.23 |
[TIL] 2021.09.17 (0) | 2021.09.18 |
[TIL] 2021.09.16 (0) | 2021.09.17 |
[TIL] 2021.09.14 (0) | 2021.09.14 |
최근댓글